📄 custom_equipment.c
字号:
/*****************************************************************************
* 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:
* ---------
* custom_equipment.c
*
* Project:
* --------
* Maui_Software
*
* Description:
* ------------
* The file contains definition of custom component module configuration
* variables, and routines handle for equipment device.
*
* 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!
*------------------------------------------------------------------------------
* Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
*============================================================================
****************************************************************************/
#ifndef __L1_STANDALONE__
/*
** Includes
*/
#include "kal_release.h"
#include "stack_types.h"
#include "syscomp_config.h"
#include "custom_config.h"
#include "stack_buff_pool.h"
#include "ctrl_buff_pool.h"
#include "device.h"
#include "l1audio.h"
#include "resource_audio.h"
#include "custom_equipment.h"
#include "custom_hw_default.h"
#include "custom_em.h"
/*
** Typedefs
*/
/*
** Defines
*/
/*
** Extern Functions
*/
#ifndef __CUST_NEW__
extern void GPIO_WriteIO(char data, char port);
extern void PWM_level(kal_uint8 level);
extern void PWM2_level(kal_uint8 level);
extern void PWM2_Configure(kal_uint32 freq, kal_uint8 duty);
extern void PWM2_Start(void);
extern void PWM2_Stop(void);
#endif /* __CUST_NEW__ */
//extern void Alter_level(kal_uint8 level);
/*
** Extern Varibales
*/
/*
** Globol Varibales
*/
/*
** Local Functions
*/
/*
** Local Variables
*/
static kal_uint8 l_ext_device_id = EXT_DEV_NONE;
#ifndef __CUST_NEW__
/***********************************************************
**
** GPIO MAPPING TABLE
**
***********************************************************/
const unsigned char netname[][MAX_NETNAME_TEXT] = {
/*0, GPIO_LABEL_CAMERA_PWR_EN */ "GP1_CAMPWREN",
/*1, GPIO_LABEL_CMLIGHT_EN */ "GP2_CMlight_EN",
/*2, GPIO_LABEL_BT_DATASEL */ "GP3_BTDATA",
/*3, GPIO_LABEL_BT_DISCON */ "GP4_BTDISCON",
/*4, GPIO_LABEL_LCM_BL_EN */ "GP5_LCMBLEN",
/*5, GPIO_LABEL_CMFLASH_EN */ "GP6_CMFLASH",
/*6, GPIO_LABEL_VIB_EN */ "GP7_VIBEN",
/*7, GPIO_LABELID_RLED_EN */ "GP0_RLEDEN",
/*8, GPIO_LABELID_BT_AUDIOSEL */ "GP10_BTAUDIO",
/*9, GPIO_LABELID_PRE_LED_EN */ "GPIO11_PRELEDEN",
/*10, GPIO_LABELID_BTPWR_EN */ "GPIO12_BTPWREN",
/*11, GPIO_LABELID_CHR_CTL */ "GP31_CHRCTL",
/*12, GPIO_LABELID_BT_RESET */ "GP39_BTRESET",
/*13, GPIO_LABELID_BLED_EN */ "GP38_BLED_EN",
/*14, GPIO_LABELID_KELEDPWM */ "GP23_KPLEDPWM",
/*15, GPIO_LABELID_GLED_EN */ "GPIO52_GLED0",
/*16, GPIO_LABEL_OP1_ON */ "GPO1_OPON",
/*17, GPIO_LABEL_OP2_ON */ "GP54_OPON",
/*18, GPIO_LABEL_USB_EN */ "GPO2_USBEN",
"GPIO#19",
"GPIO#20",
"GPO#0",
"GPO#1",
"GPO#2"
};
GPIO_MAP_ENTRY gpio_map_tbl[] = {
/*GPIO_LABEL_CAMERA_PWR_EN */ {GPIO_VAILD, GPIO_PORT_1, netname[0], NULL },
/*GPIO_LABEL_CMLIGHT_EN */ {GPIO_VAILD, GPIO_PORT_2, netname[1], NULL },
/*GPIO_LABEL_BT_DATASEL */ {GPIO_VAILD, GPIO_PORT_3, netname[2], NULL },
/*GPIO_LABEL_BT_DISCON */ {GPIO_VAILD, GPIO_PORT_4, netname[3], NULL },
/*GPIO_LABEL_LCM_BL_EN */ {GPIO_VAILD, GPIO_PORT_5, netname[4], NULL },
/*GPIO_LABEL_CMFLASH_EN */ {GPIO_VAILD, GPIO_PORT_6, netname[5], NULL },
/*GPIO_LABEL_VIB_EN */ {GPIO_VAILD, GPIO_PORT_7, netname[6], NULL },
/*GPIO_LABELID_RLED_EN */ {GPIO_VAILD, GPIO_PORT_0, netname[7], NULL },
/*GPIO_LABEL_BT_AUDIOSEL */ {GPIO_VAILD, GPIO_PORT_10, netname[8], NULL },
/*GPIO_LABEL_PRE_LED_EN */ {GPIO_VAILD, GPIO_PORT_11, netname[9], NULL },
/*GPIO_LABELID_BTPWR_EN */ {GPIO_VAILD, GPIO_PORT_12, netname[10], NULL },
/*GPIO_LABELID_CHR_CTL */ {GPIO_VAILD, GPIO_PORT_31, netname[11], NULL },
/*GPIO_LABELID_BT_RESET */ {GPIO_VAILD, GPIO_PORT_39, netname[12], NULL },
/*GPIO_LABELID_BLED_EN */ {GPIO_VAILD, GPIO_PORT_38, netname[13], NULL },
/*GPIO_LABELID_KELEDPWM */ {GPIO_VAILD, GPIO_PORT_23, netname[14], NULL },
/*GPIO_LABELID_GLED_EN */ {GPIO_VAILD, GPIO_PORT_52, netname[15], NULL },
/*GPIO_LABELID_OP1_ON */ {GPIO_VAILD, GPO_PORT_1, netname[16], NULL },
/*GPIO_LABELID_OP2_ON*/ {GPIO_VAILD, GPIO_PORT_54, netname[17], NULL },
/* GPIO_LABEL_USB_EN */ {GPIO_VAILD, GPO_PORT_2, netname[18], NULL },
/*GPIO_LABELID_19 */ {GPIO_INVAILD, GPIO_PORT_19, netname[GPIO_PORT_19], NULL },
/*GPIO_LABELID_20 */ {GPIO_INVAILD, GPIO_PORT_20, netname[GPIO_PORT_20], NULL },
/*GPO_LABELID_0 */ {GPIO_INVAILD, 0, netname[21], NULL },
/*GPO_LABELID_1 */ {GPIO_INVAILD, 0, netname[22], NULL },
/*GPO_LABELID_2 */ {GPIO_INVAILD, 0, netname[23], NULL }
};
/***********************************************************
**
** EINT MAPPING TABLE ( Execution Table )
**
***********************************************************/
const unsigned char eintname[][MAX_NETNAME_TEXT] = {
"Earphone",
"Cable",
"Charger",
"Bluetooth"
};
GPIO_MAP_ENTRY eint_map_tbl[] = {
/*EINT_LABELID_0 */ {GPIO_VAILD, 0, eintname[0], NULL },
/*EINT_LABELID_1 */ {GPIO_VAILD, 1, eintname[1], NULL },
/*EINT_LABELID_2 */ {GPIO_VAILD, 1, eintname[2], NULL },
/*EINT_LABELID_3 */ {GPIO_VAILD, 1, eintname[3], NULL },
/*EINT_LABELID_4 */ {GPIO_INVAILD, 2, eintname[4], NULL },
};
/***********************************************************
**
** ADC MAPPING TABLE ( Execution Table )
**
***********************************************************/
const unsigned char adcname[][MAX_NETNAME_TEXT] = {
"VBAT",
"Current",
"BTemp",
"VChgr",
"VAUX",
};
GPIO_MAP_ENTRY adc_map_tbl[] = {
/*ADC_LABELID_0 */ {GPIO_VAILD, 0, adcname[0], NULL },
/*ADC_LABELID_1 */ {GPIO_VAILD, 1, adcname[1], NULL },
/*ADC_LABELID_2 */ {GPIO_VAILD, 2, adcname[2], NULL },
/*ADC_LABELID_3 */ {GPIO_VAILD, 3, adcname[3], NULL },
/*ADC_LABELID_4 */ {GPIO_VAILD, 4, adcname[4], NULL },
};
#endif /* __CUST_NEW__*/
/*
* Function
* custom_cfg_audio_ec_range
* DESCRIPTION
* The function is used to customize the audio volume level for echo cancellation.
* And it will be used by media task.
* PARAMETERS
* min_vol min volume level
* max_vol max volume level
* RETURNS
* void
* GLOBALS AFFECTED
*/
void custom_cfg_audio_ec_range
(
kal_uint8 *min_vol, /* min volume level */
kal_uint8 *max_vol /* max volume level */
)
{
ASSERT(min_vol!=NULL && max_vol!=NULL);
*min_vol=1;
*max_vol=6;
}
/*
* Function
* custom_cfg_audio_out_device
* DESCRIPTION
* The function is used to customize the audio output path.
* And it will be used by audio manager.
* PARAMETERS
* audio_sound_id IN
* out_device_path IN/OUT
* RETURNS
* kal_bool
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -