| /***************************************************************************** |
| * 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: |
| * --------- |
| * DEVICE.H |
| * |
| * Project: |
| * -------- |
| * MAUI |
| * |
| * Description: |
| * ------------ |
| * This file is intends for definition of all hardware device requirement. |
| * |
| * 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! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * removed! |
| * |
| * removed! |
| * removed! |
| * 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!! |
| *============================================================================ |
| ****************************************************************************/ |
| |
| /******************************************************************************** |
| * Copyright Statement: |
| * -------------------- |
| * |
| * This product has been developed using a protocol stack |
| * developed by Sasken Communication Technologies Limited. |
| * |
| ********************************************************************************/ |
| |
| |
| #ifndef _DEVICE_H |
| #define _DEVICE_H |
| |
| /***************************************************************************** |
| * Include |
| *****************************************************************************/ |
| #include "kal_general_types.h" |
| //#include "pmic6318_sw.h" |
| #include "ps_public_struct.h" |
| #include "dcl.h" |
| |
| /***************************************************************************** |
| * Define |
| *****************************************************************************/ |
| /* Add by Yuchuan */ |
| #define UEM_GREETING_LEN 62 |
| #define UEM_EQUIP_ID_LEN 64 |
| |
| /* Define the ring compose capability */ |
| #define MAX_RING_COMPOSE_NUM 5 |
| #define MAX_RING_COMPOSE_LEN 300 |
| |
| /* Define the display text maximum len */ |
| #define UEM_DISPLAY_TEXT_LEN 30 |
| #define UEM_MAX_GREETING_LEN 30 |
| |
| /* For UEM GPIO*/ |
| #define MAX_LED_GPIO 3 /* 3 LED lights */ |
| #define MAX_LCD_BACKLIGHT 1 /* 1 backlight */ |
| #define MAX_VIBRATOR 1 /* 1 vibrator */ |
| |
| #define GPIO_INVAILD 0x0 |
| #define GPIO_VAILD 0x01 |
| #define GPO_VAILD 0x02 |
| #define MAX_NETNAME_TEXT 32 |
| |
| //#ifdef __CUST_NEW__ |
| #define GPIO_INVALID GPIO_INVAILD |
| #define GPIO_VALID GPIO_VAILD |
| #define GPO_VALID GPO_VAILD |
| //#endif /* __CUST_NEW__ */ |
| |
| /***************************************************************************** |
| * Typedef |
| *****************************************************************************/ |
| typedef enum { |
| L4_BCD = 0x01, |
| L4_ASCII = 0x04, |
| L4_UCS2 = 0x08 |
| } L4_charset_enum; |
| |
| |
| typedef enum { |
| MMI_PS_AT_LANG_DEFAULT, |
| MMI_PS_AT_LANG_UNKWN, |
| MMI_PS_AT_LANG_EN, |
| MMI_PS_AT_LANG_TW, |
| MMI_PS_AT_LANG_ZH, |
| MMI_PS_AT_LANG_LAST |
| } L4_AT_lang_enum; |
| |
| typedef enum { |
| L4_WB_AUDIO_INPUT_FIR, |
| L4_WB_AUDIO_OUTPUT_FIR, |
| L4_WB_ADUIO_MODE_PARAM |
| }l4_wb_audio_para_action_enum; |
| /***************************************************************************** |
| * Audio Interface |
| *****************************************************************************/ |
| |
| /* Define the audio device type */ |
| typedef enum { |
| AUDIO_DEVICE_SPEAKER = 0 , /* Tone, Keypad sound to play on audio device. */ |
| AUDIO_DEVICE_MICROPHONE , /* Microphone sound to send on audio device. */ |
| AUDIO_DEVICE_BUZZER , /* Ring tone sound to play on audio device. */ |
| AUDIO_DEVICE_GMI , /* MIDI/Melody sound to play on audio device */ |
| AUDIO_DEVICE_SPEAKER2 , /* earphone, carkit */ |
| AUDIO_DEVICE_LOUDSPEAKER , /* loudspeaker for free sound */ |
| AUDIO_DEVICE_SPEAKER_BOTH , |
| MAX_AUDIO_DEVICE_NUM |
| }audio_type_enum; |
| |
| |
| /* Define the audio device type */ |
| typedef enum { |
| AUDIO_DEVICE_MIC1 = 0 , /* ME */ |
| AUDIO_DEVICE_MIC2 , /* Headset */ |
| AUDIO_DEVICE_FMRR , /* FM Radio */ |
| AUDIO_DEVICE_MIC3 /* Loud Spkear */ |
| }audio_input_path_enum; |
| |
| |
| /* Define volume category */ |
| typedef enum { |
| VOL_NORMAL = 0 , |
| VOL_HEADSET , |
| VOL_HANDFREE , |
| MAX_VOL_CATE, |
| VOL_TV_OUT = MAX_VOL_CATE |
| }volume_category_enum; |
| |
| |
| /* Define volume type.*/ |
| typedef enum { |
| VOL_TYPE_CTN = 0 , /* MMI can apply to associate volume; call tone attribute */ |
| VOL_TYPE_KEY , /* MMI can apply to associate volume; keypad tone attribute */ |
| VOL_TYPE_MIC , /* microphone attribute */ |
| VOL_TYPE_GMI , /* MMI can apply to associate volume; melody, imelody, midi attribute */ |
| VOL_TYPE_SPH , /* MMI can apply to associate volume; speech sound attribute */ |
| VOL_TYPE_SID , /* side tone attribute */ |
| VOL_TYPE_MEDIA , /* MMI can apply to associate volume; As MP3, Wave,... attribute */ |
| MAX_VOL_TYPE |
| }volume_type_enum; |
| |
| |
| /* Volume level. based index is from 0..(MAX_VOL_LEVEL-1) */ |
| #define MAX_VOL_LEVEL 7 |
| |
| |
| |
| /* Define the audio play style. */ |
| typedef enum { |
| DEVICE_AUDIO_PLAY_CRESCENDO = 0 , /* Play sound for crescendo. */ |
| DEVICE_AUDIO_PLAY_INFINITE , /* Play sound for infinite. */ |
| DEVICE_AUDIO_PLAY_ONCE , /* Play sound for once. */ |
| DEVICE_AUDIO_PLAY_DESCENDO /* Play sound for descendo. */ |
| }audio_play_style_enum; |
| |
| |
| typedef struct { |
| kal_uint8 first_out_amp[MAX_AUDIO_DEVICE_NUM][MAX_VOL_LEVEL]; |
| kal_uint8 second_out_amp[MAX_AUDIO_DEVICE_NUM][MAX_VOL_LEVEL]; |
| kal_uint8 side[MAX_AUDIO_DEVICE_NUM][MAX_VOL_LEVEL]; |
| kal_uint8 volume[MAX_AUDIO_DEVICE_NUM]; |
| } acoustic_gain_struct; |
| |
| |
| /***************************************************************************** |
| * Keypad Interface |
| *****************************************************************************/ |
| |
| /* Define the keypad status. */ |
| typedef enum { |
| KEY_PRESSED = 0 /* Keypad is pressed. */ |
| ,KEY_RELEASED /* Keypad is released. */ |
| ,KEY_LONGPRESS /* Keypad is longpressed. */ |
| ,KEY_REPEATED /* Keypad is repeated. */ |
| #ifdef TWO_KEY_ENABLE |
| ,KEY_PRESSED_TWOKEY /* Two Keypad is pressed. */ |
| ,KEY_RELEASED_TWOKEY /* Two Keypad is released. */ |
| #endif /*TWO_KEY_ENABLE*/ |
| }keypad_status_enum; |
| |
| |
| /* Define the keypad code value. */ |
| typedef kal_uint8 keypad_code_enum; |
| |
| |
| /***************************************************************************** |
| * RTC Interface |
| *****************************************************************************/ |
| |
| /* Define the RTC type. */ |
| typedef enum { |
| RTC_TIME_CLOCK_IND = 0 , /* The time clock indication. */ |
| RTC_ALARM_IND /* The alarm indication */ |
| }rtc_type_enum; |
| |
| |
| /* Define the type to setting RTC. */ |
| typedef enum { |
| RTC_SETTING_TYPE_DATETIME = 0 , |
| RTC_SETTING_TYPE_DATE , |
| RTC_SETTING_TYPE_TIME |
| }rtc_setting_type_enum; |
| |
| /* Define the RTC alarm id. */ |
| typedef kal_uint8 rtc_alarm_id_enum; |
| #define RTC_ALARM1_IND 0 /* The alarm indication */ |
| #define RTC_ALARM2_IND 1 /* The alarm indication */ |
| #define RTC_ALARM3_IND 2 /* The alarm indication */ |
| #define MAX_ALARM_NUM 3 |
| |
| /* Define the Alarm type */ |
| typedef enum { |
| RTC_ALARM_VIBRATOR = 0x01 , |
| RTC_ALARM_LED = 0x02 , |
| RTC_ALARM_SOUND = 0x04 , |
| RTC_ALARM_SILENT = 0x08 |
| }rtc_alarm_type_enum; |
| |
| |
| /* Define the Alarm recurr */ |
| typedef enum { |
| RTC_ALARM_DAY1 = 0x01 , |
| RTC_ALARM_DAY2 = 0x02 , |
| RTC_ALARM_DAY3 = 0x04 , |
| RTC_ALARM_DAY4 = 0x08 , |
| RTC_ALARM_DAY5 = 0x10 , |
| RTC_ALARM_DAY6 = 0x20 , |
| RTC_ALARM_DAY7 = 0x40 , |
| RTC_ALARM_DAY_ALL = 0x7F |
| }rtc_alarm_recurr_enum; |
| |
| /* Define the Date/Time format type. */ |
| typedef enum { |
| DATE_DD_MMM_YYYY = 1 |
| /* |
| ,DATE_DD_MM_YY_H |
| ,DATE_MM_DD_YY |
| ,DATE_DD_MM_YY_S |
| ,DATE_DD_MM_YY_P |
| ,DATE_YYMMDD |
| ,DATE_YY_MM_DD |
| */ |
| |
| ,DATE_DD_MM_YYYY_S = 8 |
| ,DATE_MM_DD_YYYY_S |
| ,DATE_YYYY_MM_DD_S |
| ,DATE_YYYY_MM_DD_H |
| ,DATE_MMM_DD_YYYY |
| }date_format_enum; |
| |
| |
| #define DATE_AUX_YY_MM_DD 1 |
| #define DATE_AUX_YYYY_MM_DD 2 |
| |
| |
| typedef enum { |
| TIME_HH_MM_24 = 1 , |
| TIME_HH_MM_12 |
| }time_format_enum; |
| |
| |
| /* Define the RTC clock/alarm format type. */ |
| /* Could be rtc_alarm_format_enum or rtc_clock_format_enum */ |
| typedef kal_uint8 rtc_format_enum; |
| |
| |
| /*Y:Year,M:Month,W:DOW,D:DOM,H:Hour,M:Min,S:SEC*/ |
| typedef enum { |
| DEVICE_AL_EN_None = 0 , |
| DEVICE_AL_EN_ChkS , |
| DEVICE_AL_EN_ChkMS , |
| DEVICE_AL_EN_ChkHMS , |
| DEVICE_AL_EN_ChkDHMS , |
| DEVICE_AL_EN_ChkWHMS , |
| DEVICE_AL_EN_ChkMDHMS , |
| DEVICE_AL_EN_ChkYMDHMS , |
| DEVICE_AL_EN_NoChange |
| }rtc_alarm_format_enum; |
| |
| |
| typedef enum { |
| DEVICE_TC_EN_None = 0 , |
| DEVICE_TC_EN_ChkS , |
| DEVICE_TC_EN_ChkM , |
| DEVICE_TC_EN_ChkH , |
| DEVICE_TC_EN_ChkD , |
| DEVICE_TC_EN_ChkW , |
| DEVICE_TC_EN_ChkMon , |
| DEVICE_TC_EN_ChkY , |
| DEVICE_TC_EN_NoChange |
| }rtc_clock_format_enum; |
| |
| /* Define the alarm status. */ |
| typedef enum { |
| ALARM_STATUS_ON_POWEROFF_CHARING =0 , /* The alarm is started when it's power off with charging status. */ |
| ALARM_STATUS_ON_POWEROFF , /* The alarm is started when it's power off status without charging. */ |
| ALARM_STATUS_ON_POWERON /* The alarm is started when it's power on status. */ |
| }alarm_status_enum; |
| |
| |
| /* Define the calling status */ |
| typedef enum { |
| UEM_CALL_UNKNOW = 0 , |
| UEM_CALL_SETUP , |
| UEM_CALL_CONNECT , |
| UEM_CALL_DISCONNECT |
| }uem_call_state_enum; |
| |
| |
| /***************************************************************************** |
| * GPIO / EINT Interface |
| *****************************************************************************/ |
| |
| /* Define the internal GPIO device type. */ |
| /* Becareful!!!! |
| MAX_GPIO_DEVICE_NUM Will impact the size of uem_context_rmi_struct data item !!!!! */ |
| |
| typedef enum { |
| GPIO_DEV_LED_MAINLCD = 0 , /* Main LCD backlight */ |
| GPIO_DEV_LED_SUBLCD , /* Sub LCD backlight */ |
| GPIO_DEV_LED_STATUS_1 , /* Status LED R*/ |
| GPIO_DEV_LED_STATUS_2 , /* Status LED G*/ |
| GPIO_DEV_LED_STATUS_3 , /* Status LED B*/ |
| GPIO_DEV_LED_KEY , /* Keypad backlight */ |
| GPIO_DEV_VIBRATOR , /* Vibrator */ |
| GPIO_DEV_FLASHLIGHT , /* FlashLight */ |
| GPIO_DEV_FTE_FEEDBACK_VIB , /* Reserve_1 */ |
| GPIO_DEV_LED_BACKLIGHT_DIMMING, /* Reserve_2 */ |
| GPIO_DEV_RESERVED3 , /* Reserve_3 */ |
| GPIO_DEV_RESERVED4 , /* Reserve_4 */ |
| GPIO_DEV_RESERVED5 , /* Reserve_4 */ |
| GPIO_DEV_RESERVED6 , /* Reserve_4 */ |
| GPIO_DEV_RESERVED7 , /* Reserve_4 */ |
| GPIO_DEV_RESERVED8 , /* Reserve_4 */ |
| GPIO_DEV_RESERVED9 , /* Reserve_4 */ |
| GPIO_DEV_RESERVED10 , /* Reserve_4 */ |
| GPIO_DEV_RESERVED11 , /* Reserve_4 */ |
| GPIO_DEV_RESERVED12 , /* Reserve_4 */ |
| MAX_GPIO_DEVICE_NUM |
| }gpio_device_enum; |
| |
| |
| /* Define the LED light level. For LCD bright level, Keypad backlight, Flashlight */ |
| typedef enum { |
| LED_LIGHT_LEVEL0 =0 , /* turn off */ |
| LED_LIGHT_LEVEL1 , |
| LED_LIGHT_LEVEL2 , |
| LED_LIGHT_LEVEL3 , |
| LED_LIGHT_LEVEL4 , |
| LED_LIGHT_LEVEL5 , |
| #if defined (WISDOM_MMI) |
| LED_LIGHT_LEVEL6 , |
| #endif |
| LED_LIGHT_LEVEL_MAX |
| }gpio_device_led_level_typedef; |
| |
| typedef enum |
| { |
| /* LED status pattern */ |
| LED_PATTERN_BEGIN, |
| |
| LED_POWER_ON = LED_PATTERN_BEGIN, |
| LED_POWER_OFF, |
| LED_BATTERY_WARNING, |
| LED_BATTERY_LOW, |
| LED_Connect900, |
| LED_Connect1800, |
| LED_OnCharging, |
| LED_FullCharging, |
| LED_MessageIn, |
| LED_MessageRemind, |
| LED_Caller1, |
| LED_Caller2, |
| LED_Caller3, |
| LED_Caller4, |
| LED_Caller5, |
| LED_Caller6, |
| LED_LimitService, |
| LED_NoService, |
| LED_Connect1900, |
| LED_Roaming, |
| LED_PATTERN_END = 50, |
| |
| /* lcd backlight pattern */ |
| LCD_PATTERN_BEGIN, |
| LCD_PATTERN_1 = LCD_PATTERN_BEGIN, |
| LCD_PATTERN_2, |
| LCD_PATTERN_END = 100, |
| |
| /* vibrator pattern */ |
| VIB_PATTERN_BEGIN, |
| VIB_PATTERN_1 = VIB_PATTERN_BEGIN, |
| VIB_PATTERN_2, |
| VIB_PATTERN_3, /* Incomming SMS */ |
| VIB_PATTERN_4, /* FTE feedback*/ |
| VIB_PATTERN_A, |
| VIB_PATTERN_B, |
| VIB_PATTERN_C, |
| VIB_PATTERN_END = 150, |
| |
| MAX_PATTERN_ID = VIB_PATTERN_END |
| } PATTERN_ID; |
| |
| typedef enum |
| { |
| PLAY_STOP, |
| PLAY_REPEAT, |
| PLAY_ONCE, |
| MAX_PATTERN_TYPE = PLAY_ONCE |
| } PATTERN_TYPE; |
| |
| typedef struct |
| { |
| kal_uint8 gpio_control[MAX_LED_GPIO]; |
| kal_uint16 duration_time; /* max time 65535 msec */ |
| } LED_PATTERN_STRUCT; |
| |
| typedef struct |
| { |
| kal_uint8 gpio_control[MAX_LCD_BACKLIGHT]; |
| kal_uint16 duration_time; /* max time 65535 msec */ |
| } LCD_PATTERN_STRUCT; |
| |
| typedef struct |
| { |
| kal_uint8 gpio_control[MAX_VIBRATOR]; |
| kal_uint16 duration_time; /* max time 65535 msec */ |
| } VIB_PATTERN_STRUCT; |
| |
| extern LCD_PATTERN_STRUCT *custom_get_lcd_patterns(PATTERN_ID lcd_pattern_id); |
| extern LED_PATTERN_STRUCT *custom_get_led_patterns(PATTERN_ID led_pattern_id); |
| extern VIB_PATTERN_STRUCT *custom_get_vib_patterns(PATTERN_ID vib_pattern_id); |
| extern kal_bool uem_play_pattern(PATTERN_ID pattern_id, PATTERN_TYPE pattern_type); |
| extern kal_uint8 custom_get_led_label(kal_uint8 id); |
| extern kal_uint8 custom_get_lcd_label(kal_uint8 id); |
| extern kal_uint8 custom_get_vib_label(kal_uint8 id); |
| extern void custom_uem_set_rmi_lang_id(kal_uint8 *lang_id); |
| extern kal_bool custom_uem_gpio_set_level(kal_uint8 gpio_dev_type, kal_uint8 gpio_dev_level); |
| extern kal_uint8* custom_uem_get_equip_id(kal_uint8 equip_id); |
| #ifdef __VIBRATION_SPEAKER_SUPPORT__ |
| typedef void (*custom_uem_spkvib_func)(kal_bool); |
| extern void custom_uem_set_spkvib_func(void (*func)(kal_bool)); |
| #endif |
| extern kal_uint32 custom_uem_get_bl_level_num(void); |
| extern kal_uint32 custom_uem_get_pwm_bl_mode(kal_uint8 gpio_dev_type); |
| |
| /* It is a time from backlight dimming to backlight drak*/ |
| #define GPIO_BRIGHTNESS_DIMMING_TIME 5000 |
| |
| /* Define the Vibrator level. */ |
| typedef enum { |
| VIBRATOR_OFF =0 , /* turn off */ |
| VIBRATOR_ON /* turn on */ |
| }gpio_device_vibrator_level_typedef; |
| |
| |
| typedef enum { |
| AUD_MODE_NORMAL =0 , /* Normal Mode */ |
| AUD_MODE_HEADSET , /* HeadSet (Earphone) Mode */ |
| AUD_MODE_LOUDSPK , /* Loudspeaker Mode */ |
| MAX_AUD_MODE_NUM |
| }audio_mode_enum; |
| |
| |
| /* Define the external GPIO device interrupt. */ |
| typedef enum { |
| EXT_DEV_NONE = 0 , /* None, if there is no external device */ |
| EXT_DEV_HANDFREE , /* Hand-free */ |
| EXT_DEV_EARPHONE , /* Earphone */ |
| EXT_DEV_CARKIT , /* Car-Kit */ |
| EXT_DEV_KEY_1 , /* Send Key */ |
| EXT_DEV_KEY_2 , /* Reserved */ |
| EXT_DEV_UART , |
| EXT_DEV_CLAM_OPEN = 8 , |
| EXT_DEV_CLAM_CLOSE , |
| EXT_DEV_HOOK_ON , /* for FWP */ |
| EXT_DEV_HOOK_OFF , /* for FWP */ |
| EXT_DEV_AUX_DETECT_DONE , |
| EXT_DEV_TRANSMITTER_HOLD_ON, |
| EXT_DEV_TRANSMITTER_PUT_DOWN, |
| MAX_EXT_DEVICE_NUM |
| }ext_device_enum; |
| |
| |
| typedef enum { |
| AUD_LOOPBACK_MODE_NORMAL =0 , /* Normal Mode */ |
| AUD_LOOPBACK_MODE_HEADSET_PREFER , /* Loudspk_prefer */ |
| AUD_LOOPBACK_MODE_HEADSET , /* HeadSet (Earphone) Mode */ |
| AUD_LOOPBACK_MODE_LOUDSPK , /* Loudspeaker Mode */ |
| MAX_AUD_LOOPBACK_MODE_NUM |
| }audio_loopback_mode_enum; |
| |
| |
| /************************************************************** |
| ** |
| ** Set UART Port Function Type |
| ** |
| **************************************************************/ |
| typedef enum |
| { |
| UART_NVRAM_LID_FUNC_UART_CONFIG, |
| UART_NVRAM_LID_FUNC_HIGH_SPEED_SIM, |
| UART_NVRAM_LID_FUNC_SWDBG, |
| UART_NVRAM_LID_FUNC_UART_POWER, |
| UART_NVRAM_LID_FUNC_TST_OUTPUT_MODE, |
| UART_NVRAM_LID_FUNC_USB_LOGGING |
| } uart_nvram_lid_function_enum; |
| |
| |
| /***************************************************************************** |
| * PMIC Interface |
| *****************************************************************************/ |
| typedef enum |
| { |
| PMIC_VBAT_STATUS, /* Notify the battery voltage, BMT_VBAT_STATUS */ |
| PMIC_CHARGER_IN, /* Charger plug in, BMT_CHARGER_IN */ |
| PMIC_CHARGER_OUT, /* Charger plug out, BMT_CHARGER_OUT */ |
| PMIC_OVERVOLPROTECT, /* The voltage of battery is too high. BMT_OVERVOLPROTECT */ |
| PMIC_OVERBATTEMP, /* The temperature of battery is too high. BMT_OVERBATTEMP */ |
| PMIC_LOWBATTEMP, /* The temperature of battery is too low. BMT_LOWBATTEMP */ |
| PMIC_OVERCHARGECURRENT, /* Charge current is too large. BMT_OVERCHARGECURRENT */ |
| PMIC_CHARGE_COMPLETE, /* Charge is completed. BMT_CHARGE_COMPLETE */ |
| PMIC_INVALID_BATTERY, /* invalid battery BMT_INVALID_BAT*/ |
| PMIC_INVALID_CHARGER, /* invalid charger BMT_INVALID_CHARGER*/ |
| PMIC_CHARGING_TIMEOUT, /* Bad battery BMT_CHARGE_TIMEOUT */ |
| PMIC_LOWCHARGECURRENT, /* Charge current is too Low. BMT_LOWCHARGECURRENT */ |
| PMIC_CHARGE_BAD_CONTACT, /* Charger Bad Contact */ |
| PMIC_BATTERY_BAD_CONTACT, /* Battery Bad Contact */ |
| PMIC_USB_CHARGER_IN, /* Usb Charger plug in */ |
| PMIC_USB_CHARGER_OUT, /* Usb Charger plug out */ |
| PMIC_USB_NO_CHARGER_IN, |
| PMIC_USB_NO_CHARGER_OUT, |
| PMIC_BATTERY_IN, |
| PMIC_BATTERY_OUT |
| } pmic_status_enum; |
| typedef pmic_status_enum battery_status_enum; |
| |
| typedef enum |
| { |
| BATTERY_LOW_POWEROFF = 0, |
| BATTERY_LOW_TX_PROHIBIT, |
| BATTERY_LOW_WARNING, |
| BATTERY_LEVEL_0, |
| BATTERY_LEVEL_1, |
| BATTERY_LEVEL_2, |
| BATTERY_LEVEL_3, |
| BATTERY_LEVEL_4 = BATTERY_LEVEL_3, /* BATTERY_LEVEL_4 */ |
| BATTERY_LEVEL_5 = BATTERY_LEVEL_3, /* BATTERY_LEVEL_5 */ |
| BATTERY_LEVEL_6 = BATTERY_LEVEL_3, /* BATTERY_LEVEL_6 */ |
| BATTERY_LEVEL_LAST = 9 |
| |
| } battery_level_enum; |
| |
| |
| /* Define the power on status. */ |
| typedef enum |
| { |
| POWER_ON_KEYPAD = 0 , |
| POWER_ON_ALARM , |
| POWER_ON_CHARGER_IN , |
| POWER_ON_EXCEPTION , |
| POWER_ON_USB , |
| POWER_ON_UNINIT , |
| POWER_ON_PRECHARGE = 8 |
| } power_on_status_enum; |
| |
| #define POWERON(mode) ( (mode == POWER_ON_KEYPAD) || \ |
| (mode == POWER_ON_ALARM) || \ |
| (mode == POWER_ON_CHARGER_IN) ||\ |
| (mode == POWER_ON_USB) ||\ |
| (mode == POWER_ON_EXCEPTION) ||\ |
| (mode == POWER_ON_PRECHARGE) ) |
| |
| extern power_on_status_enum uem_get_power_on_mode(void); |
| |
| /* Define the POWER reset type. This is to use for the power restablish, while it's on charging or alarm status. */ |
| typedef enum |
| { |
| NORMAL_RESET, |
| CHARGING_RESET, |
| ALARM_RESET, |
| WM_RESET |
| } pmic_reset_type_enum; |
| |
| typedef enum |
| { |
| PMIC_GET_CHR_STATE |
| ,PMIC_GET_AC_USB |
| ,PMIC_GET_LED_CONFIG |
| ,PMIC_GET_RGB_DIM |
| ,PMIC_GET_BL_DIM |
| ,PMIC_GET_SPEAKER_STATE |
| ,PMIC_GET_SPEAKER_GAIN |
| ,PMIC_GET_MISC_LDO_STATE |
| ,PMIC_READ_REG |
| ,PMIC_WRITE_REG |
| ,PMIC_CHR_ENABLE |
| ,PMIC_CHR_CURRENT_CTRL |
| ,PMIC_USB_CHR_ENABLE |
| ,PMIC_LED_ENABLE |
| ,PMIC_LED_CONFIG |
| ,PMIC_RGB_DIM_CLK |
| ,PMIC_CHR_PUMP_ENABLE |
| ,PMIC_CHR_PUMP_CURRENT |
| ,PMIC_BL_DIM_CLK |
| ,PMIC_BL_DIV_BYPASS |
| ,PMIC_SPEAKER_ENABLE |
| ,PMIC_SPEAKER_GAIN |
| ,PMIC_VIBRATOR_ENABLE |
| ,PMIC_VIBRATOR_SEL |
| ,PMIC_VMC_ENABLE |
| ,PMIC_VMC_SEL |
| ,PMIC_VASW_ENABLE |
| ,PMIC_VASW_SEL |
| ,PMIC_USB_REG_ENABLE |
| ,PMIC_VBAT_ENABLE |
| ,PMIC_ISENSE_ENABLE |
| ,PMIC_BL_PWM |
| ,PMIC_MAX_NUM |
| }pmic_config_req_enum; |
| |
| /*************************************************************** |
| ** FM Radio |
| ***************************************************************/ |
| typedef enum |
| { |
| FM_RADIO_CMD_MONO = 0, |
| FM_RADIO_CMD_STEREO, |
| FM_RADIO_CMD_RSSI, |
| FM_RADIO_CMD_IF_COUNT, |
| FM_RADIO_CMD_RSSI_INFO |
| }fm_radio_config_cmd_enum; |
| |
| typedef enum |
| { |
| FM_RADIO_COMMON_DISABLE = 0, |
| FM_RADIO_COMMON_ENABLE, /* in mono, only represent enable; in stereo, represent enable + sblend On */ |
| FM_RADIO_COMMON_ENABLE_EXTRA /* in stereo, represent enable + sblend Off */ |
| }fm_radio_common_state_enum; |
| |
| /*************************************************************** |
| ** RF Test Tool -- GSM |
| ***************************************************************/ |
| typedef enum |
| { |
| RF_TEST_GSM_TX_BAND_850, |
| RF_TEST_GSM_TX_BAND_900, |
| RF_TEST_GSM_TX_BAND_1800, |
| RF_TEST_GSM_TX_BAND_1900 |
| }rf_test_gsm_tx_band_enum; |
| |
| typedef enum |
| { |
| RF_TEST_GSM_STOP, |
| RF_TEST_GSM_TX_TEST, |
| RF_TEST_GSM_RX_TEST, |
| RF_TEST_GSM_POWER_SCAN, |
| RF_TEST_GSM_TX_TEST_MULTI_SLOT, |
| RF_TEST_GSM_RX_TEST_TWO_PATH, //5 |
| RF_TEST_GSM_GET_TX_POWER //6 |
| }rf_test_gsm_req_enum; |
| |
| /*************************************************************** |
| ** RF Test Tool -- WiFi |
| ***************************************************************/ |
| |
| typedef enum |
| { |
| RF_TEST_WIFI_STOP, |
| RF_TEST_WIFI_TEST_MODE, |
| RF_TEST_WIFI_NORMAL_MODE, |
| RF_TEST_WIFI_TX_GET_DAC_OFFSET, |
| RF_TEST_WIFI_TX_OUTPUT_POWER, |
| RF_TEST_WIFI_TX_CARRIER_SUPP, |
| RF_TEST_WIFI_TX_LOCAL_FREQ, |
| RF_TEST_WIFI_TX_CONT_PKT, |
| RF_TEST_WIFI_RX_CONT_PKT, |
| RF_TEST_WIFI_POWER_SAVE, |
| RF_TEST_WIFI_REG_MCR32_WRITE, |
| RF_TEST_WIFI_REG_MCR32_READ, |
| RF_TEST_WIFI_REG_MCR16_WRITE, |
| RF_TEST_WIFI_REG_MCR16_READ, |
| RF_TEST_WIFI_REG_BBCR_WRITE, |
| RF_TEST_WIFI_REG_BBCR_READ, |
| RF_TEST_WIFI_REG_EEPROM_WRITE, |
| RF_TEST_WIFI_REG_EEPROM_READ, |
| RF_TEST_WIFI_REG_EFUSE_WRITE, |
| RF_TEST_WIFI_REG_EFUSE_READ |
| }rf_test_wifi_req_enum; |
| |
| /***************************************************************************** |
| * Misc Interface |
| *****************************************************************************/ |
| /* Indicator data type */ |
| typedef enum |
| { |
| IND_BATTCHG = 0 , |
| IND_SIGNAL , |
| IND_SERVICE , |
| IND_SOUNDER , |
| IND_MESSAGE , |
| IND_CALL , |
| IND_VOX , |
| IND_ROAM , |
| IND_SMSFULL |
| } indicator_type_enum; |
| |
| |
| /* Define the equipment to return the string mapping. */ |
| typedef enum |
| { |
| EQ_ME_MANUFACTURE_ID = 0 , |
| EQ_ME_MODEL_ID , |
| EQ_ME_REVISION_ID , |
| EQ_ME_SERIAL_NUMBER_ID , |
| EQ_ME_SERIAL_NUMBER_SIM2_ID , |
| EQ_ME_GLOBAL_OBJECT_ID , |
| EQ_ME_MANUFACTURE_INFO_ID , |
| EQ_ME_COMP_CAP_LIST_ID , |
| EQ_ME_SERIAL_NUMBER_SIM3_ID , |
| EQ_ME_SERIAL_NUMBER_SIM4_ID , |
| MAX_ME_ID_NUM |
| } equip_id_enum; |
| |
| |
| #define MAX_ME_ID_LEN 30 |
| |
| |
| /* Define the device process status. */ |
| typedef enum |
| { |
| DEV_OK = 0 , /* The device status is ok to process. */ |
| DEV_FAIL , /* The device status is fail to process*/ |
| DEV_FAIL_VM_NO_FREE_ENTRY , /* voice mail fail cause */ |
| DEV_FAIL_VM_BUFFER_FULL , |
| DEV_FAIL_VM_PLAY_NO_DATA |
| } dev_status_enum; |
| |
| |
| /***************************************************************************** |
| * USB Interface |
| *****************************************************************************/ |
| typedef enum |
| { |
| DEVUSB_DETECT_ACTION_UNKNOWN = 0 , |
| DEVUSB_DETECT_ACTION_PLUGIN , |
| DEVUSB_DETECT_ACTION_PLUGOUT , |
| DEVUSB_DETECT_ACTION_USB_SUSPEND , |
| DEVUSB_DETECT_ACTION_MAX_ID |
| } devusb_detect_action_enum; |
| |
| |
| typedef enum |
| { |
| DEVUSB_CFG_ACTION_UNKNOWN = 0 , |
| DEVUSB_CFG_ACTION_CDC_ACM , |
| DEVUSB_CFG_ACTION_MASS_STORAGE , |
| DEVUSB_CFG_ACTION_MULTI_COM, |
| DEVUSB_CFG_ACTION_WEBCAM , |
| DEVUSB_CFG_ACTION_STOP_MS , |
| DEVUSB_CFG_ACTION_IRDBG , |
| DEVUSB_CFG_ACTION_PICTBRIGE , |
| DEVUSB_CFG_ACTION_MTP , |
| DEVUSB_CFG_ACTION_STOP_MTP , |
| DEVUSB_CFG_ACTION_MAX_ID |
| } devusb_cfg_action_enum; |
| |
| |
| typedef enum |
| { |
| USB_SWITCH_PORT_APP_DATA = 0 , |
| USB_SWITCH_PORT_APP_DEBUG, |
| USB_SWITCH_PORT_APP_NULL |
| } usb_switch_port_app_enum; |
| |
| #if (defined(MT6229) || defined(MT6227) || defined(MT6228) || defined(MT6225) || defined(MT6268T) || defined(MT6268H) || defined(MT6230) || defined(MT6227D) || defined(MT6223) || defined(MT6226D) || defined(MT6223P)) |
| #if (defined(MT6227) || defined(MT6227D) || defined(MT6226D)) |
| typedef enum |
| { |
| |
| EM_SWDBG_OFF, |
| EM_SWDBG_DSP_L1_PS, |
| EM_SWDBG_L1_PS, |
| EM_SWDBG_MCU, |
| EM_SWDBG_RESET, |
| EM_SWDBG_MAX |
| } EM_SWDBG_ITEM; |
| |
| #elif defined(MT6228) |
| typedef enum |
| { |
| |
| EM_SWDBG_OFF, |
| EM_SWDBG_DSP_L1_PS, |
| EM_SWDBG_L1_PS, |
| EM_SWDBG_MCU, |
| EM_SWDBG_MCU_DSP, |
| EM_SWDBG_RESET, |
| EM_SWDBG_MAX |
| } EM_SWDBG_ITEM; |
| |
| #else |
| typedef enum |
| { |
| |
| EM_SWDBG_OFF, |
| EM_SWDBG_DSP_L1, |
| EM_SWDBG_DSP_PS, |
| EM_SWDBG_L1_PS, |
| EM_SWDBG_MCU, |
| EM_SWDBG_MCU_DSP, |
| EM_SWDBG_RESET, |
| EM_SWDBG_MAX |
| } EM_SWDBG_ITEM; |
| |
| #endif |
| #endif /* #if (defined(MT6229) || defined(MT6227) || defined(MT6228) || defined(MT6225) || defined(MT6268T)|| defined(MT6268H) || defined(MT6230) || defined(MT6227D)) */ |
| |
| typedef enum |
| { |
| EM_USB_LOGGING_NONE, |
| #ifdef __DSPIRDBG__ |
| EM_USB_LOGGING_IRDBG, |
| #endif |
| |
| |
| EM_USB_LOGGING_MAX |
| } EM_USB_LOGGING_ITEM; |
| |
| |
| //#if defined(MT6223PMU) |
| /*************************************************************** |
| ** PMU6223 |
| ***************************************************************/ |
| /* Enum */ |
| typedef enum |
| { |
| MT6223PMU_READ_REG |
| ,MT6223PMU_WRITE_REG |
| ,MT6223PMU_GET_CHR_STATUS |
| ,MT6223PMU_SET_CHR_GET_CHR_EN |
| ,MT6223PMU_SET_CHR_SET_CHR_EN |
| ,MT6223PMU_SET_CHR_GET_CHR_CUR |
| ,MT6223PMU_SET_CHR_SET_CHR_CUR |
| ,MT6223PMU_SET_CHR_GET_CHR_CUR_OFFSET |
| ,MT6223PMU_SET_CHR_SET_CHR_CUR_OFFSET |
| // ,MT6223PMU_SET_CHR_GET_OV_TH_FREEZE |
| // ,MT6223PMU_SET_CHR_SET_OV_TH_FREEZE |
| ,MT6223PMU_SET_CHR_GET_CV_THRESHOLD |
| ,MT6223PMU_SET_CHR_SET_CV_THRESHOLD |
| ,MT6223PMU_GET_DRIVER_INFO |
| ,MT6223PMU_SET_DRIVER_INFO |
| ,MT6223PMU_GET_LDO_VOLTAGE |
| ,MT6223PMU_SET_LDO_VOLTAGE |
| ,MT6223PMU_GET_LDO_ENABLE |
| ,MT6223PMU_SET_LDO_ENABLE |
| ,MT6223PMU_GET_BIAS_CURRENT |
| ,MT6223PMU_SET_BIAS_CURRENT |
| |
| ,MT6223PMU_MAX_NUM |
| }EM_MT6223PMU_REQ_ENUM; |
| |
| |
| typedef enum |
| { |
| PMU6223_CHR_STATE_CHR_DET = 0, |
| PMU6223_CHR_STATE_BAT_ON, |
| PMU6223_CHR_STATE_CV, |
| PMU6223_CHR_STATE_CHR_OVP, |
| PMU6223_CHR_STATE_CHARGING, |
| PMU6223_CHR_STATE_MAX |
| }PMU6223_CHR_STATE; |
| |
| typedef enum |
| { |
| PMU6223_CHR_CUR_OFFSET_P1 = 0, |
| PMU6223_CHR_CUR_OFFSET_P2, |
| PMU6223_CHR_CUR_OFFSET_M2, |
| PMU6223_CHR_CUR_OFFSET_M1 |
| }PMU6223_CHR_CUR_OFFSET; |
| |
| typedef enum |
| { |
| PMU6223_DRIVE_INFO_VIB = 0, |
| PMU6223_DRIVE_INFO_LED |
| }PMU6223_DRIVE_INFO; |
| |
| typedef enum |
| { |
| PMU6223_LDO_VOLTAGE_VRF = 0, |
| PMU6223_LDO_VOLTAGE_VCORE, |
| PMU6223_LDO_VOLTAGE_VM, |
| PMU6223_LDO_VOLTAGE_VIO, |
| PMU6223_LDO_VOLTAGE_VA, |
| PMU6223_LDO_VOLTAGE_VTCXO, |
| PMU6223_LDO_VOLTAGE_VSIM, |
| PMU6223_LDO_VOLTAGE_VRTC1 |
| // PMU6223_LDO_VOLTAGE_VRTC2 |
| }PMU6223_LDO_VOLTAGE_TYPE; |
| |
| typedef enum |
| { |
| PMU6223_LDO_ENABLE_VRF = 0, |
| PMU6223_LDO_ENABLE_VTCXO, |
| PMU6223_LDO_ENABLE_VSIM |
| }PMU6223_LDO_ENABLE; |
| |
| typedef enum |
| { |
| PMU6223_BIAS_CALIBRATE_VRF = 0, |
| PMU6223_BIAS_CALIBRATE_VM, |
| PMU6223_BIAS_CALIBRATE_VIO, |
| PMU6223_BIAS_CALIBRATE_VSIM, |
| PMU6223_BIAS_CALIBRATE_VCORE_CAL |
| }PMU6223_BIAS_CALIBRATE_TYPE; |
| |
| #if 0 |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| #endif /* if 0 */ |
| |
| /*************************************************************** |
| ** PMU6238 |
| ***************************************************************/ |
| /* Enum */ |
| typedef enum |
| { |
| MT6238PMU_READ_REG |
| ,MT6238PMU_WRITE_REG |
| ,MT6238PMU_GET_CHR_STATUS |
| ,MT6238PMU_SET_CHR_GET_CHR_EN |
| ,MT6238PMU_SET_CHR_SET_CHR_EN |
| ,MT6238PMU_SET_CHR_GET_CHR_CUR |
| ,MT6238PMU_SET_CHR_SET_CHR_CUR |
| ,MT6238PMU_SET_CHR_GET_CHR_CUR_OFFSET |
| ,MT6238PMU_SET_CHR_SET_CHR_CUR_OFFSET |
| ,MT6238PMU_SET_CHR_GET_OV_TH_FREEZE |
| ,MT6238PMU_SET_CHR_SET_OV_TH_FREEZE |
| ,MT6238PMU_SET_CHR_GET_CV_THRESHOLD |
| ,MT6238PMU_SET_CHR_SET_CV_THRESHOLD |
| ,MT6238PMU_GET_DRIVER_INFO |
| ,MT6238PMU_SET_DRIVER_INFO |
| ,MT6238PMU_GET_LDO_VOL_SEL_VBT /* MC */ |
| ,MT6238PMU_SET_LDO_VOL_SEL_VBT /* MC */ |
| ,MT6238PMU_GET_LDO_VOL_SEL_VCAMD /* CAMERA */ |
| ,MT6238PMU_SET_LDO_VOL_SEL_VCAMD /* CAMERA */ |
| ,MT6238PMU_GET_LDO_VOL_SEL_VCAMA /* SW_A */ |
| ,MT6238PMU_SET_LDO_VOL_SEL_VCAMA /* SW_A */ |
| ,MT6238PMU_GET_LDO_VOL_SEL_VSIM |
| ,MT6238PMU_SET_LDO_VOL_SEL_VSIM |
| ,MT6238PMU_GET_LDO_VOLTAGE_CAL |
| ,MT6238PMU_SET_LDO_VOLTAGE_CAL |
| ,MT6238PMU_GET_LDO_ENABLE |
| ,MT6238PMU_SET_LDO_ENABLE |
| ,MT6238PMU_GET_DC_CONTROL |
| ,MT6238PMU_SET_DC_CONTROL |
| ,MT6238PMU_GET_BIAS_CURRENT |
| ,MT6238PMU_SET_BIAS_CURRENT |
| |
| ,MT6238PMU_MAX_NUM |
| }EM_MT6238PMU_REQ_ENUM; |
| |
| typedef enum |
| { |
| EM_MT6238PMU_OV_TH_FREEZE_AUTO = 0, |
| EM_MT6238PMU_OV_TH_FREEZE_FIXED |
| } EM_MT6238PMU_OV_TH_FREEZE_TYPE; |
| |
| |
| typedef enum |
| { |
| PMU6238_CHR_CUR_OFFSET_P1 = 0, |
| PMU6238_CHR_CUR_OFFSET_P2, |
| PMU6238_CHR_CUR_OFFSET_M2, |
| PMU6238_CHR_CUR_OFFSET_M1 |
| }PMU6238_CHR_CUR_OFFSET; |
| |
| typedef enum |
| { |
| PMU6238_DRIVE_INFO_VIB = 0, |
| PMU6238_DRIVE_INFO_LED |
| }PMU6238_DRIVE_INFO; |
| |
| typedef enum |
| { |
| PMU6238_LDO_VOLTAGE_VCORE = 0, /* FBADJ */ |
| PMU6238_LDO_VOLTAGE_VCORE_SLEEP, /* FBADJ_SLEEP */ |
| PMU6238_LDO_VOLTAGE_VRF, |
| PMU6238_LDO_VOLTAGE_VM, |
| PMU6238_LDO_VOLTAGE_VIO, |
| PMU6238_LDO_VOLTAGE_VA, |
| PMU6238_LDO_VOLTAGE_VTCXO, |
| PMU6238_LDO_VOLTAGE_VSIM, |
| PMU6238_LDO_VOLTAGE_VRTC1, |
| PMU6238_LDO_VOLTAGE_VRTC2, |
| PMU6238_LDO_VOLTAGE_VUSB, |
| PMU6238_LDO_VOLTAGE_VBT, /* VMC */ |
| PMU6238_LDO_VOLTAGE_VCAMD, /* VCAMERA */ |
| PMU6238_LDO_VOLTAGE_VCAMA, /* VSW_A */ |
| PMU6238_LDO_VOLTAGE_VSIM2 |
| }PMU6238_LDO_VOLTAGE_TYPE; |
| |
| |
| typedef enum |
| { |
| PMU6238_LDO_ENABLE_VRF_ON_SEL = 0, |
| PMU6238_LDO_ENABLE_VRF_EN, |
| PMU6238_LDO_ENABLE_VTCXO_ON_SEL, |
| PMU6238_LDO_ENABLE_VTCXO_EN, |
| PMU6238_LDO_ENABLE_VUSB, |
| PMU6238_LDO_ENABLE_VBT, /* VMC */ |
| PMU6238_LDO_ENABLE_VCAM_D, /* CAMERA */ |
| PMU6238_LDO_ENABLE_VCAM_A, /* SW_A */ |
| PMU6238_LDO_ENABLE_VSIM1, |
| PMU6238_LDO_ENABLE_VSIM2 |
| }PMU6238_LDO_ENABLE; |
| |
| |
| typedef enum |
| { |
| PMU6238_DC_CONTROL_GAINP = 0, |
| PMU6238_DC_CONTROL_GAIN, |
| PMU6238_DC_CONTROL_GAIND, |
| PMU6238_DC_CONTROL_DIR_CTRL_EN, |
| PMU6238_DC_CONTROL_DCVCK_SEL, |
| PMU6238_DC_CONTROL_ISEL, |
| PMU6238_DC_CONTROL_ADJCKSEL, |
| PMU6238_DC_CONTROL_MODESET, |
| PMU6238_DC_CONTROL_MODEEN, |
| PMU6238_DC_CONTROL_PFMSEL_0_3, |
| PMU6238_DC_CONTROL_PFMSEL_4_6, |
| PMU6238_DC_CONTROL_IASEL, |
| PMU6238_DC_CONTROL_SLEW_CTRL |
| }PMU6238_DC_CONTROL_TYPE; |
| |
| typedef enum |
| { |
| PMU6238_BIAS_CALIBRATE_VRF = 0, |
| PMU6238_BIAS_CALIBRATE_VM, |
| PMU6238_BIAS_CALIBRATE_VIO, |
| PMU6238_BIAS_CALIBRATE_VA, |
| PMU6238_BIAS_CALIBRATE_VTCXO, |
| PMU6238_BIAS_CALIBRATE_VSIM, |
| PMU6238_BIAS_CALIBRATE_VUSB, |
| PMU6238_BIAS_CALIBRATE_VBT, |
| PMU6238_BIAS_CALIBRATE_VCAMD, |
| PMU6238_BIAS_CALIBRATE_VCAMA, |
| PMU6238_BIAS_CALIBRATE_VSIM2 |
| }PMU6238_BIAS_CALIBRATE_TYPE; |
| |
| /*************************************************************** |
| ** PMU6326 |
| ***************************************************************/ |
| /* Enum */ |
| typedef enum |
| { |
| MT6326PMU_READ_REG |
| ,MT6326PMU_WRITE_REG |
| ,MT6326PMU_MAX_NUM |
| }EM_MT6326PMU_REQ_ENUM; |
| |
| /*************************************************************** |
| ** PMU6253 |
| ***************************************************************/ |
| /* Enum */ |
| typedef enum |
| { |
| MT6253PMU_READ_REG |
| ,MT6253PMU_WRITE_REG |
| ,MT6253PMU_MAX_NUM |
| }EM_MT6253PMU_REQ_ENUM; |
| |
| #endif /* _DEVICE_H */ |
| |
| |