238 56 307KB
English Pages 31 Year 2011
LY M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
MT6573 PMU Driver Customer Document
Version: Release date:
0.1 2011-02-166
© 2008 - 2011 MediaTek Inc. This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
FO
Specifications are subject to change without notice.
LY
MT6573 Confidential B
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
Document Revision History
Revision
FO
0.1
Date
Author
2011-02-16
James Lo
MediaTek Confidential
Description Initial Draft
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 2 of 31
LY
MT6573 Confidential B
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
Table of Contents
Document Revision History .................................................................................................................. 2 Table of Contents................................................................................................................................... 3 1
Introduction................................................................................................................................... 5 1.1
1.2
2
Design............................................................................................................................................ 6 2.1 2.2
3
Software/Hardware Environment.......................................................................................... 5 1.1.1 Software Environment .......................................................................................... 5 1.1.2 Hardware Environment......................................................................................... 5 Functionality.......................................................................................................................... 5 Architecture........................................................................................................................... 6 Procedure & Flow ................................................................................................................. 7
Interface......................................................................................................................................... 8 3.1
Data Structure....................................................................................................................... 8 3.1.1 pmic_adpt_voltage_enum.............................................................................. 8 3.1.2
upmu_buck_vol_enum,
upmu_ldo_vol_enum,
upmu_buck_boost_vol_enum ....................................................................... 12
FO
3.2
3.1.3
upmu_buck_profile_entry.......................................................................... 15
3.1.4
upmu_ldo_profile_entry............................................................................ 15
3.1.5
upmu_buck_boost_profile_entry............................................................. 16
3.1.6
upmu_isink_profile_entry ....................................................................... 16
3.1.7
upmu_kpled_profile_entry ....................................................................... 16
3.1.8
upmu_chr_profile_entry............................................................................ 16
3.1.9
upmu_oc_profile_entry .............................................................................. 17
3.1.10
upmu_strup_profile_entry ....................................................................... 17
3.1.11
upmu_lposc_profile_entry ....................................................................... 17
3.1.12
upmu_retention_profile_entry............................................................... 17
3.1.13
upmu_chr_current_enum .............................................................................. 17
3.1.14
pmic_adpt_chr_current_enum ................................................................... 18
3.1.15
upmu_ldo_profile......................................................................................... 19
3.1.16
upmu_buck_profile....................................................................................... 19
3.1.17
upmu_buck_boost_profile.......................................................................... 19
3.1.18
upmu_kpled_profile .................................................................................... 19
3.1.19
upmu_chr_profile......................................................................................... 19
3.1.20
upmu_oc_profile ........................................................................................... 20
3.1.21
upmu_strup_profile .................................................................................... 20
3.1.22
upmu_lposc_profile .................................................................................... 20
3.1.23
upmu_retention_profile............................................................................ 20
Functions ............................................................................................................................ 20 3.2.1 hw_charger_type_detection ............................................................................... 20 3.2.2 pmu6573_hw_init ............................................................................................... 21
MediaTek Confidential
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 3 of 31
pmu6573_pmu_customization ........................................................................... 21 pmu6573_chrdet_eint_irq .................................................................................. 21 pmu6573_init...................................................................................................... 21 upmu_ldo_enable............................................................................................... 22 upmu_ldo_on_sel ............................................................................................... 22 upmu_ldo_vol_sel .............................................................................................. 22 upmu_ldo_ndis_enable ...................................................................................... 23 upmu_ldo_stb_enable ........................................................................................ 23 upmu_ldo_oc_auto_off....................................................................................... 23 upmu_ldo_ocfb_enable ...................................................................................... 23 upmu_ldo_get_oc_status ................................................................................... 24 upmu_ldo_get_status ......................................................................................... 24 upmu_ldo_oc_status .......................................................................................... 24 upmu_ldo_status ................................................................................................ 24 upmu_ldo_stb_td................................................................................................ 25 upmu_ldo_cal ..................................................................................................... 25 upmu_ldo_en_force_enable............................................................................... 25 upmu_ldo_oc_td................................................................................................. 25 upmu_buck_enable ............................................................................................ 26 upmu_buck_rs.................................................................................................... 26 upmu_buck_sf_str_mode................................................................................... 26 upmu_buck_normal_voltage_adjust .................................................................. 27 upmu_buck_oc_auto_off .................................................................................... 27 upmu_buck_ocfb_enable ................................................................................... 27 upmu_buck_stb_enable ..................................................................................... 27 upmu_buck_get_oc_status ................................................................................ 28 upmu_buck_get_status ...................................................................................... 28 upmu_buck_modeset ......................................................................................... 28 upmu_buck_sleep_voltage_adjust..................................................................... 28 upmu_is_buck_mode ......................................................................................... 29 upmu_buck_oc_td .............................................................................................. 29 upmu_buck_stb_td ............................................................................................. 29
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
3.2.3 3.2.4 3.2.5 3.2.6 3.2.7 3.2.8 3.2.9 3.2.10 3.2.11 3.2.12 3.2.13 3.2.14 3.2.15 3.2.16 3.2.17 3.2.18 3.2.19 3.2.20 3.2.21 3.2.22 3.2.23 3.2.24 3.2.25 3.2.26 3.2.27 3.2.28 3.2.29 3.2.30 3.2.31 3.2.32 3.2.33 3.2.34
LY
MT6573 Confidential B
4
Customization............................................................................................................................. 30 4.1
5
Customization Items ........................................................................................................... 30
Build............................................................................................................................................. 31
FO
5.1 5.2
Source Code Structure & File Description.......................................................................... 31 Build Option ........................................................................................................................ 31
MediaTek Confidential
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 4 of 31
LY
MT6573 Confidential B
Introduction
1.1
Software/Hardware Environment
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
1
1.1.1
Software Environment
Driver discussed in this document is designed based on Linux Kernel 2.6.32 and Android 2.3.
Due to the practicality, this document will focus on the overall architecture and BUCK / LDO control section.
1.1.2
Hardware Environment
Driver discussed in this document can run on MT6573 EVB SOC: MT6573
1.2
Functionality
FO
The PMU driver’s main functionality is: (1) 4 BUCK and 13 LDO turn on / off functions for PM API (2) 4 BUCK and 13 LDO voltage setting functions for PM API (3) Charger plug in / out and type detection. (4) Internal used functions.
MediaTek Confidential
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 5 of 31
Design
2.1
Architecture
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
2
LY
MT6573 Confidential B
This driver is the lowest level API for supporting the Android Power Management (mt6573_pm_api.c). Please read the “Power Management API customer document” first.
FO
The following figure is the architecture of this driver in this section.
MediaTek Confidential
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 6 of 31
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
LY
MT6573 Confidential B
2.2
Procedure & Flow
The PMU driver is the common interface between HW PMU and other drivers.
FO
In the system booting time, the PMU driver will initialize the PMU HW component.
MediaTek Confidential
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 7 of 31
Interface
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
3
LY
MT6573 Confidential B
Describe the data structure and interface used by other kernel module.
3.1
Data Structure
3.1.1
pmic_adpt_voltage_enum
FO
It ‘s used in this driver. typedef enum { PMIC_ADPT_VOLT_0_0 = PMIC_ADPT_VOLT_0_1 = PMIC_ADPT_VOLT_0_2 = PMIC_ADPT_VOLT_0_3 = PMIC_ADPT_VOLT_0_4 = PMIC_ADPT_VOLT_0_5 = PMIC_ADPT_VOLT_0_6 = PMIC_ADPT_VOLT_0_7 = PMIC_ADPT_VOLT_0_7_0_0 PMIC_ADPT_VOLT_0_7_2_5 PMIC_ADPT_VOLT_0_7_5_0 PMIC_ADPT_VOLT_0_7_7_5 PMIC_ADPT_VOLT_0_8 = PMIC_ADPT_VOLT_0_8_0_0 PMIC_ADPT_VOLT_0_8_2_5 PMIC_ADPT_VOLT_0_8_5_0 PMIC_ADPT_VOLT_0_8_7_5 PMIC_ADPT_VOLT_0_9 = PMIC_ADPT_VOLT_0_9_0_0 PMIC_ADPT_VOLT_0_9_2_5 PMIC_ADPT_VOLT_0_9_5_0 PMIC_ADPT_VOLT_0_9_7_5 PMIC_ADPT_VOLT_1_0 = PMIC_ADPT_VOLT_1_0_0_0 PMIC_ADPT_VOLT_1_0_2_5 PMIC_ADPT_VOLT_1_0_5_0 PMIC_ADPT_VOLT_1_0_7_5 PMIC_ADPT_VOLT_1_1 = PMIC_ADPT_VOLT_1_1_0_0 PMIC_ADPT_VOLT_1_1_2_5 PMIC_ADPT_VOLT_1_1_5_0 PMIC_ADPT_VOLT_1_1_7_5 PMIC_ADPT_VOLT_1_2 = MediaTek Confidential
0, 100, 200, 300, 400, 500, 600, 700, = 700, = 725, = 750, = 775, 800, = 800, = 825, = 850, = 875, 900, = 900, = 925, = 950, = 975, 1000, = 1000, = 1025, = 1050, = 1075, 1100, = 1100, = 1125, = 1150, = 1175, 1200,
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 8 of 31
= 1200, = 1225, = 1250, = 1275, 1300, = 1300, = 1325, = 1350, = 1375, 1400, = 1400, = 1425, = 1450, = 1475, 1500, = 1500, = 1525, = 1550, = 1575, 1600, = 1600, = 1625, = 1650, = 1675, 1700, = 1700, = 1725, = 1750, = 1775, 1800, = 1800, = 1825, = 1850, = 1875, 1900, = 1900, = 1925, = 1950, = 1975, 2000, = 2000, = 2025, = 2050, = 2075, 2100, 2200,
FO
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
PMIC_ADPT_VOLT_1_2_0_0 PMIC_ADPT_VOLT_1_2_2_5 PMIC_ADPT_VOLT_1_2_5_0 PMIC_ADPT_VOLT_1_2_7_5 PMIC_ADPT_VOLT_1_3 = PMIC_ADPT_VOLT_1_3_0_0 PMIC_ADPT_VOLT_1_3_2_5 PMIC_ADPT_VOLT_1_3_5_0 PMIC_ADPT_VOLT_1_3_7_5 PMIC_ADPT_VOLT_1_4 = PMIC_ADPT_VOLT_1_4_0_0 PMIC_ADPT_VOLT_1_4_2_5 PMIC_ADPT_VOLT_1_4_5_0 PMIC_ADPT_VOLT_1_4_7_5 PMIC_ADPT_VOLT_1_5 = PMIC_ADPT_VOLT_1_5_0_0 PMIC_ADPT_VOLT_1_5_2_5 PMIC_ADPT_VOLT_1_5_5_0 PMIC_ADPT_VOLT_1_5_7_5 PMIC_ADPT_VOLT_1_6 = PMIC_ADPT_VOLT_1_6_0_0 PMIC_ADPT_VOLT_1_6_2_5 PMIC_ADPT_VOLT_1_6_5_0 PMIC_ADPT_VOLT_1_6_7_5 PMIC_ADPT_VOLT_1_7 = PMIC_ADPT_VOLT_1_7_0_0 PMIC_ADPT_VOLT_1_7_2_5 PMIC_ADPT_VOLT_1_7_5_0 PMIC_ADPT_VOLT_1_7_7_5 PMIC_ADPT_VOLT_1_8 = PMIC_ADPT_VOLT_1_8_0_0 PMIC_ADPT_VOLT_1_8_2_5 PMIC_ADPT_VOLT_1_8_5_0 PMIC_ADPT_VOLT_1_8_7_5 PMIC_ADPT_VOLT_1_9 = PMIC_ADPT_VOLT_1_9_0_0 PMIC_ADPT_VOLT_1_9_2_5 PMIC_ADPT_VOLT_1_9_5_0 PMIC_ADPT_VOLT_1_9_7_5 PMIC_ADPT_VOLT_2_0 = PMIC_ADPT_VOLT_2_0_0_0 PMIC_ADPT_VOLT_2_0_2_5 PMIC_ADPT_VOLT_2_0_5_0 PMIC_ADPT_VOLT_2_0_7_5 PMIC_ADPT_VOLT_2_1 = PMIC_ADPT_VOLT_2_2 =
LY
MT6573 Confidential B
MediaTek Confidential
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 9 of 31
2300, 2400, 2500, 2600, 2700, = 2700, = 2725, = 2750, = 2775, 2800, = 2800, = 2825, = 2850, = 2875, 2900, 3000, 3100, = 2000, 3200, 3300, 3400, 3500, 3600, 3700, 3800, 3900, 4000, 4100, 4200, 4300, 4400, 4500, 4600, 4700, 4800, 4900, 5000, 5100, 5200, 5300, 5400, 5500, 5600, 5700, 5800, 5900,
FO
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
PMIC_ADPT_VOLT_2_3 = PMIC_ADPT_VOLT_2_4 = PMIC_ADPT_VOLT_2_5 = PMIC_ADPT_VOLT_2_6 = PMIC_ADPT_VOLT_2_7 = PMIC_ADPT_VOLT_2_7_0_0 PMIC_ADPT_VOLT_2_7_2_5 PMIC_ADPT_VOLT_2_7_5_0 PMIC_ADPT_VOLT_2_7_7_5 PMIC_ADPT_VOLT_2_8 = PMIC_ADPT_VOLT_2_8_0_0 PMIC_ADPT_VOLT_2_8_2_5 PMIC_ADPT_VOLT_2_8_5_0 PMIC_ADPT_VOLT_2_8_7_5 PMIC_ADPT_VOLT_2_9 = PMIC_ADPT_VOLT_3_0 = PMIC_ADPT_VOLT_3_1 = PMIC_ADPT_VOLT_3_1_0_0 PMIC_ADPT_VOLT_3_2 = PMIC_ADPT_VOLT_3_3 = PMIC_ADPT_VOLT_3_4 = PMIC_ADPT_VOLT_3_5 = PMIC_ADPT_VOLT_3_6 = PMIC_ADPT_VOLT_3_7 = PMIC_ADPT_VOLT_3_8 = PMIC_ADPT_VOLT_3_9 = PMIC_ADPT_VOLT_4_0 = PMIC_ADPT_VOLT_4_1 = PMIC_ADPT_VOLT_4_2 = PMIC_ADPT_VOLT_4_3 = PMIC_ADPT_VOLT_4_4 = PMIC_ADPT_VOLT_4_5 = PMIC_ADPT_VOLT_4_6 = PMIC_ADPT_VOLT_4_7 = PMIC_ADPT_VOLT_4_8 = PMIC_ADPT_VOLT_4_9 = PMIC_ADPT_VOLT_5_0 = PMIC_ADPT_VOLT_5_1 = PMIC_ADPT_VOLT_5_2 = PMIC_ADPT_VOLT_5_3 = PMIC_ADPT_VOLT_5_4 = PMIC_ADPT_VOLT_5_5 = PMIC_ADPT_VOLT_5_6 = PMIC_ADPT_VOLT_5_7 = PMIC_ADPT_VOLT_5_8 = PMIC_ADPT_VOLT_5_9 =
LY
MT6573 Confidential B
MediaTek Confidential
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 10 of 31
FO
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
PMIC_ADPT_VOLT_6_0 = 6000, PMIC_ADPT_VOLT_6_1 = 6100, PMIC_ADPT_VOLT_6_2 = 6200, PMIC_ADPT_VOLT_6_3 = 6300, PMIC_ADPT_VOLT_6_4 = 6400, PMIC_ADPT_VOLT_6_5 = 6500, PMIC_ADPT_VOLT_6_6 = 6600, PMIC_ADPT_VOLT_6_7 = 6700, PMIC_ADPT_VOLT_6_8 = 6800, PMIC_ADPT_VOLT_6_9 = 6900, PMIC_ADPT_VOLT_7_0 = 7000, PMIC_ADPT_VOLT_7_1 = 7100, PMIC_ADPT_VOLT_7_2 = 7200, PMIC_ADPT_VOLT_7_3 = 7300, PMIC_ADPT_VOLT_7_4 = 7400, PMIC_ADPT_VOLT_7_5 = 7500, PMIC_ADPT_VOLT_7_6 = 7600, PMIC_ADPT_VOLT_7_7 = 7700, PMIC_ADPT_VOLT_7_8 = 7800, PMIC_ADPT_VOLT_7_9 = 7900, PMIC_ADPT_VOLT_8_0 = 8000, PMIC_ADPT_VOLT_1_5_2_0_V = 1520, PMIC_ADPT_VOLT_1_5_4_0_V = 1540, PMIC_ADPT_VOLT_1_5_6_0_V = 1560, PMIC_ADPT_VOLT_1_5_8_0_V = 1580, PMIC_ADPT_VOLT_1_6_2_0_V = 1620, PMIC_ADPT_VOLT_1_6_4_0_V = 1640, PMIC_ADPT_VOLT_1_6_6_0_V = 1660, PMIC_ADPT_VOLT_1_6_8_0_V = 1680, PMIC_ADPT_VOLT_1_7_2_0_V = 1720, PMIC_ADPT_VOLT_1_7_4_0_V = 1740, PMIC_ADPT_VOLT_1_7_6_0_V = 1760, PMIC_ADPT_VOLT_1_7_8_0_V = 1780, PMIC_ADPT_VOLT_1_8_2_0_V = 1820, PMIC_ADPT_VOLT_1_8_4_0_V = 1840, PMIC_ADPT_VOLT_1_8_6_0_V = 1860, PMIC_ADPT_VOLT_1_8_8_0_V = 1880, PMIC_ADPT_VOLT_1_9_2_0_V = 1920, PMIC_ADPT_VOLT_1_9_4_0_V = 1940, PMIC_ADPT_VOLT_1_9_6_0_V = 1960, PMIC_ADPT_VOLT_1_9_8_0_V = 1980, PMIC_ADPT_VOLT_2_0_2_0_V = 2020, PMIC_ADPT_VOLT_2_0_4_0_V = 2040, PMIC_ADPT_VOLT_2_0_6_0_V = 2060, PMIC_ADPT_VOLT_2_0_8_0_V = 2080, PMIC_ADPT_VOLT_2_1_2_0_V = 2120,
LY
MT6573 Confidential B
MediaTek Confidential
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 11 of 31
= 50000000
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
PMIC_ADPT_VOLT_MAX }pmic_adpt_voltage_enum;
LY
MT6573 Confidential B
3.1.2
upmu_buck_vol_enum, upmu_ldo_vol_enum, upmu_buck_boost_vol_enum
FO
It ‘s used in this driver. typedef enum { UPMU_VOLT_0_0_0_0_V = PMIC_ADPT_VOLT_0_0, UPMU_VOLT_0_1_0_0_V = PMIC_ADPT_VOLT_0_1, UPMU_VOLT_0_2_0_0_V = PMIC_ADPT_VOLT_0_2, UPMU_VOLT_0_3_0_0_V = PMIC_ADPT_VOLT_0_3, UPMU_VOLT_0_4_0_0_V = PMIC_ADPT_VOLT_0_4, UPMU_VOLT_0_5_0_0_V = PMIC_ADPT_VOLT_0_5, UPMU_VOLT_0_6_0_0_V = PMIC_ADPT_VOLT_0_6, UPMU_VOLT_0_7_0_0_V = PMIC_ADPT_VOLT_0_7_0_0, UPMU_VOLT_0_7_2_5_V = PMIC_ADPT_VOLT_0_7_2_5, UPMU_VOLT_0_7_5_0_V = PMIC_ADPT_VOLT_0_7_5_0, UPMU_VOLT_0_7_7_5_V = PMIC_ADPT_VOLT_0_7_7_5, UPMU_VOLT_0_8_0_0_V = PMIC_ADPT_VOLT_0_8_0_0, UPMU_VOLT_0_8_2_5_V = PMIC_ADPT_VOLT_0_8_2_5, UPMU_VOLT_0_8_5_0_V = PMIC_ADPT_VOLT_0_8_5_0, UPMU_VOLT_0_8_7_5_V = PMIC_ADPT_VOLT_0_8_7_5, UPMU_VOLT_0_9_0_0_V = PMIC_ADPT_VOLT_0_9_0_0, UPMU_VOLT_0_9_2_5_V = PMIC_ADPT_VOLT_0_9_2_5, UPMU_VOLT_0_9_5_0_V = PMIC_ADPT_VOLT_0_9_5_0, UPMU_VOLT_0_9_7_5_V = PMIC_ADPT_VOLT_0_9_7_5, UPMU_VOLT_1_0_0_0_V = PMIC_ADPT_VOLT_1_0_0_0, UPMU_VOLT_1_0_2_5_V = PMIC_ADPT_VOLT_1_0_2_5, UPMU_VOLT_1_0_5_0_V = PMIC_ADPT_VOLT_1_0_5_0, UPMU_VOLT_1_0_7_5_V = PMIC_ADPT_VOLT_1_0_7_5, UPMU_VOLT_1_1_0_0_V = PMIC_ADPT_VOLT_1_1_0_0, UPMU_VOLT_1_1_2_5_V = PMIC_ADPT_VOLT_1_1_2_5, UPMU_VOLT_1_1_5_0_V = PMIC_ADPT_VOLT_1_1_5_0, UPMU_VOLT_1_1_7_5_V = PMIC_ADPT_VOLT_1_1_7_5, UPMU_VOLT_1_2_0_0_V = PMIC_ADPT_VOLT_1_2_0_0, UPMU_VOLT_1_2_2_5_V = PMIC_ADPT_VOLT_1_2_2_5, UPMU_VOLT_1_2_5_0_V = PMIC_ADPT_VOLT_1_2_5_0, UPMU_VOLT_1_2_7_5_V = PMIC_ADPT_VOLT_1_2_7_5, UPMU_VOLT_1_3_0_0_V = PMIC_ADPT_VOLT_1_3_0_0, UPMU_VOLT_1_3_2_5_V = PMIC_ADPT_VOLT_1_3_2_5, UPMU_VOLT_1_3_5_0_V = PMIC_ADPT_VOLT_1_3_5_0, UPMU_VOLT_1_3_7_5_V = PMIC_ADPT_VOLT_1_3_7_5, UPMU_VOLT_1_4_0_0_V = PMIC_ADPT_VOLT_1_4_0_0, MediaTek Confidential
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 12 of 31
FO
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
UPMU_VOLT_1_4_2_5_V = PMIC_ADPT_VOLT_1_4_2_5, UPMU_VOLT_1_4_5_0_V = PMIC_ADPT_VOLT_1_4_5_0, UPMU_VOLT_1_4_7_5_V = PMIC_ADPT_VOLT_1_4_7_5, UPMU_VOLT_1_5_0_0_V = PMIC_ADPT_VOLT_1_5_0_0, UPMU_VOLT_1_5_2_5_V = PMIC_ADPT_VOLT_1_5_2_5, UPMU_VOLT_1_5_5_0_V = PMIC_ADPT_VOLT_1_5_5_0, UPMU_VOLT_1_5_7_5_V = PMIC_ADPT_VOLT_1_5_7_5, UPMU_VOLT_1_6_0_0_V = PMIC_ADPT_VOLT_1_6_0_0, UPMU_VOLT_1_6_2_5_V = PMIC_ADPT_VOLT_1_6_2_5, UPMU_VOLT_1_6_5_0_V = PMIC_ADPT_VOLT_1_6_5_0, UPMU_VOLT_1_6_7_5_V = PMIC_ADPT_VOLT_1_6_7_5, UPMU_VOLT_1_7_0_0_V = PMIC_ADPT_VOLT_1_7_0_0, UPMU_VOLT_1_7_2_5_V = PMIC_ADPT_VOLT_1_7_2_5, UPMU_VOLT_1_7_5_0_V = PMIC_ADPT_VOLT_1_7_5_0, UPMU_VOLT_1_7_7_5_V = PMIC_ADPT_VOLT_1_7_7_5, UPMU_VOLT_1_8_0_0_V = PMIC_ADPT_VOLT_1_8_0_0, UPMU_VOLT_1_8_2_5_V = PMIC_ADPT_VOLT_1_8_2_5, UPMU_VOLT_1_8_5_0_V = PMIC_ADPT_VOLT_1_8_5_0, UPMU_VOLT_1_8_7_5_V = PMIC_ADPT_VOLT_1_8_7_5, UPMU_VOLT_1_9_0_0_V = PMIC_ADPT_VOLT_1_9_0_0, UPMU_VOLT_1_9_2_5_V = PMIC_ADPT_VOLT_1_9_2_5, UPMU_VOLT_1_9_5_0_V = PMIC_ADPT_VOLT_1_9_5_0, UPMU_VOLT_1_9_7_5_V = PMIC_ADPT_VOLT_1_9_7_5, UPMU_VOLT_2_0_0_0_V = PMIC_ADPT_VOLT_2_0_0_0, UPMU_VOLT_2_0_2_5_V = PMIC_ADPT_VOLT_2_0_2_5, UPMU_VOLT_2_0_5_0_V = PMIC_ADPT_VOLT_2_0_5_0, UPMU_VOLT_2_0_7_5_V = PMIC_ADPT_VOLT_2_0_7_5, UPMU_VOLT_2_1_0_0_V = PMIC_ADPT_VOLT_2_1, UPMU_VOLT_2_2_0_0_V = PMIC_ADPT_VOLT_2_2, UPMU_VOLT_2_3_0_0_V = PMIC_ADPT_VOLT_2_3, UPMU_VOLT_2_4_0_0_V = PMIC_ADPT_VOLT_2_4, UPMU_VOLT_2_5_0_0_V = PMIC_ADPT_VOLT_2_5, UPMU_VOLT_2_6_0_0_V = PMIC_ADPT_VOLT_2_6, UPMU_VOLT_2_7_0_0_V = PMIC_ADPT_VOLT_2_7_0_0, UPMU_VOLT_2_7_2_5_V = PMIC_ADPT_VOLT_2_7_2_5, UPMU_VOLT_2_7_5_0_V = PMIC_ADPT_VOLT_2_7_5_0, UPMU_VOLT_2_7_7_5_V = PMIC_ADPT_VOLT_2_7_7_5, UPMU_VOLT_2_8_0_0_V = PMIC_ADPT_VOLT_2_8_0_0, UPMU_VOLT_2_8_2_5_V = PMIC_ADPT_VOLT_2_8_2_5, UPMU_VOLT_2_8_5_0_V = PMIC_ADPT_VOLT_2_8_5_0, UPMU_VOLT_2_8_7_5_V = PMIC_ADPT_VOLT_2_8_7_5, UPMU_VOLT_2_9_0_0_V = PMIC_ADPT_VOLT_2_9, UPMU_VOLT_3_0_0_0_V = PMIC_ADPT_VOLT_3_0, UPMU_VOLT_3_1_0_0_V = PMIC_ADPT_VOLT_3_1, UPMU_VOLT_3_2_0_0_V = PMIC_ADPT_VOLT_3_2, UPMU_VOLT_3_3_0_0_V = PMIC_ADPT_VOLT_3_3,
LY
MT6573 Confidential B
MediaTek Confidential
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 13 of 31
FO
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
UPMU_VOLT_3_4_0_0_V = PMIC_ADPT_VOLT_3_4, UPMU_VOLT_3_5_0_0_V = PMIC_ADPT_VOLT_3_5, UPMU_VOLT_3_6_0_0_V = PMIC_ADPT_VOLT_3_6, UPMU_VOLT_3_7_0_0_V = PMIC_ADPT_VOLT_3_7, UPMU_VOLT_3_8_0_0_V = PMIC_ADPT_VOLT_3_8, UPMU_VOLT_3_9_0_0_V = PMIC_ADPT_VOLT_3_9, UPMU_VOLT_4_0_0_0_V = PMIC_ADPT_VOLT_4_0, UPMU_VOLT_4_1_0_0_V = PMIC_ADPT_VOLT_4_1, UPMU_VOLT_4_2_0_0_V = PMIC_ADPT_VOLT_4_2, UPMU_VOLT_4_3_0_0_V = PMIC_ADPT_VOLT_4_3, UPMU_VOLT_4_4_0_0_V = PMIC_ADPT_VOLT_4_4, UPMU_VOLT_4_5_0_0_V = PMIC_ADPT_VOLT_4_5, UPMU_VOLT_4_6_0_0_V = PMIC_ADPT_VOLT_4_6, UPMU_VOLT_4_7_0_0_V = PMIC_ADPT_VOLT_4_7, UPMU_VOLT_4_8_0_0_V = PMIC_ADPT_VOLT_4_8, UPMU_VOLT_4_9_0_0_V = PMIC_ADPT_VOLT_4_9, UPMU_VOLT_5_0_0_0_V = PMIC_ADPT_VOLT_5_0, UPMU_VOLT_5_1_0_0_V = PMIC_ADPT_VOLT_5_1, UPMU_VOLT_5_2_0_0_V = PMIC_ADPT_VOLT_5_2, UPMU_VOLT_5_3_0_0_V = PMIC_ADPT_VOLT_5_3, UPMU_VOLT_5_4_0_0_V = PMIC_ADPT_VOLT_5_4, UPMU_VOLT_5_5_0_0_V = PMIC_ADPT_VOLT_5_5, UPMU_VOLT_5_6_0_0_V = PMIC_ADPT_VOLT_5_6, UPMU_VOLT_5_7_0_0_V = PMIC_ADPT_VOLT_5_7, UPMU_VOLT_5_8_0_0_V = PMIC_ADPT_VOLT_5_8, UPMU_VOLT_5_9_0_0_V = PMIC_ADPT_VOLT_5_9, UPMU_VOLT_6_0_0_0_V = PMIC_ADPT_VOLT_6_0, UPMU_VOLT_6_1_0_0_V = PMIC_ADPT_VOLT_6_1, UPMU_VOLT_6_2_0_0_V = PMIC_ADPT_VOLT_6_2, UPMU_VOLT_6_3_0_0_V = PMIC_ADPT_VOLT_6_3, UPMU_VOLT_6_4_0_0_V = PMIC_ADPT_VOLT_6_4, UPMU_VOLT_6_5_0_0_V = PMIC_ADPT_VOLT_6_5, UPMU_VOLT_6_6_0_0_V = PMIC_ADPT_VOLT_6_6, UPMU_VOLT_6_7_0_0_V = PMIC_ADPT_VOLT_6_7, UPMU_VOLT_6_8_0_0_V = PMIC_ADPT_VOLT_6_8, UPMU_VOLT_6_9_0_0_V = PMIC_ADPT_VOLT_6_9, UPMU_VOLT_7_0_0_0_V = PMIC_ADPT_VOLT_7_0, UPMU_VOLT_7_1_0_0_V = PMIC_ADPT_VOLT_7_1, UPMU_VOLT_7_2_0_0_V = PMIC_ADPT_VOLT_7_2, UPMU_VOLT_7_3_0_0_V = PMIC_ADPT_VOLT_7_3, UPMU_VOLT_7_4_0_0_V = PMIC_ADPT_VOLT_7_4, UPMU_VOLT_7_5_0_0_V = PMIC_ADPT_VOLT_7_5, UPMU_VOLT_7_6_0_0_V = PMIC_ADPT_VOLT_7_6, UPMU_VOLT_7_7_0_0_V = PMIC_ADPT_VOLT_7_7, UPMU_VOLT_7_8_0_0_V = PMIC_ADPT_VOLT_7_8, UPMU_VOLT_7_9_0_0_V = PMIC_ADPT_VOLT_7_9,
LY
MT6573 Confidential B
MediaTek Confidential
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 14 of 31
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
UPMU_VOLT_8_0_0_0_V = PMIC_ADPT_VOLT_8_0, UPMU_VOLT_1_5_2_0_V = PMIC_ADPT_VOLT_1_5_2_0_V, UPMU_VOLT_1_5_4_0_V = PMIC_ADPT_VOLT_1_5_4_0_V, UPMU_VOLT_1_5_6_0_V = PMIC_ADPT_VOLT_1_5_6_0_V, UPMU_VOLT_1_5_8_0_V = PMIC_ADPT_VOLT_1_5_8_0_V, UPMU_VOLT_1_6_2_0_V = PMIC_ADPT_VOLT_1_6_2_0_V, UPMU_VOLT_1_6_4_0_V = PMIC_ADPT_VOLT_1_6_4_0_V, UPMU_VOLT_1_6_6_0_V = PMIC_ADPT_VOLT_1_6_6_0_V, UPMU_VOLT_1_6_8_0_V = PMIC_ADPT_VOLT_1_6_8_0_V, UPMU_VOLT_1_7_2_0_V = PMIC_ADPT_VOLT_1_7_2_0_V, UPMU_VOLT_1_7_4_0_V = PMIC_ADPT_VOLT_1_7_4_0_V, UPMU_VOLT_1_7_6_0_V = PMIC_ADPT_VOLT_1_7_6_0_V, UPMU_VOLT_1_7_8_0_V = PMIC_ADPT_VOLT_1_7_8_0_V, UPMU_VOLT_1_8_2_0_V = PMIC_ADPT_VOLT_1_8_2_0_V, UPMU_VOLT_1_8_4_0_V = PMIC_ADPT_VOLT_1_8_4_0_V, UPMU_VOLT_1_8_6_0_V = PMIC_ADPT_VOLT_1_8_6_0_V, UPMU_VOLT_1_8_8_0_V = PMIC_ADPT_VOLT_1_8_8_0_V, UPMU_VOLT_1_9_2_0_V = PMIC_ADPT_VOLT_1_9_2_0_V, UPMU_VOLT_1_9_4_0_V = PMIC_ADPT_VOLT_1_9_4_0_V, UPMU_VOLT_1_9_6_0_V = PMIC_ADPT_VOLT_1_9_6_0_V, UPMU_VOLT_1_9_8_0_V = PMIC_ADPT_VOLT_1_9_8_0_V, UPMU_VOLT_2_0_2_0_V = PMIC_ADPT_VOLT_2_0_2_0_V, UPMU_VOLT_2_0_4_0_V = PMIC_ADPT_VOLT_2_0_4_0_V, UPMU_VOLT_2_0_6_0_V = PMIC_ADPT_VOLT_2_0_6_0_V, UPMU_VOLT_2_0_8_0_V = PMIC_ADPT_VOLT_2_0_8_0_V, UPMU_VOLT_2_1_2_0_V = PMIC_ADPT_VOLT_2_1_2_0_V,
LY
MT6573 Confidential B
UPMU_VOLT_MAX = PMIC_ADPT_VOLT_MAX }upmu_buck_vol_enum, upmu_ldo_vol_enum, upmu_buck_boost_vol_enum;
3.1.3
upmu_buck_profile_entry
It ‘s used in this driver. typedef struct { kal_uint32 addr; kal_uint32 vol_list_num; // 1: Means the voltage is fixed, not allow to configure upmu_buck_vol_enum vol_list[UPMU_MAX_BUCK_VOL_SEL_NUM]; }upmu_buck_profile_entry;
3.1.4
upmu_ldo_profile_entry
FO
It ‘s used in this driver. typedef struct { kal_uint32 addr; kal_uint32 vol_list_num; // 1: Means the voltage is fixed, not allow to configure MediaTek Confidential
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 15 of 31
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
upmu_ldo_vol_enum vol_list[UPMU_MAX_LDO_VOL_SEL_NUM]; }upmu_ldo_profile_entry;
LY
MT6573 Confidential B
3.1.5
upmu_buck_boost_profile_entry
It ‘s used in this driver. typedef struct { kal_uint32 addr; kal_uint32 vol_list_num; // 1: Means the voltage is fixed, not allow to configure upmu_buck_vol_enum vol_list[UPMU_MAX_BUCK_BOOST_VOL_SEL_NUM]; }upmu_buck_boost_profile_entry;
3.1.6
upmu_isink_profile_entry
It ‘s used in this driver. typedef struct { kal_uint32 addr; }upmu_isink_profile_entry;
3.1.7
upmu_kpled_profile_entry
It ‘s used in this driver. typedef struct { kal_uint32 addr; kal_uint32 spk_vol_list_num; upmu_spk_vol_enum spk_vol_list[UPMU_MAX_SPK_VOL_NUM]; }upmu_spk_profile_entry;
3.1.8
upmu_chr_profile_entry
FO
It ‘s used in this driver. #define upmu_chr_vol_enum pmic_adpt_voltage_enum typedef struct { kal_uint32 addr; kal_uint32 chr_current_list_num; upmu_chr_current_enum chr_current_list[UPMU_MAX_CHARGE_CURRENT_NUM]; kal_uint32 chr_det_lv_list_num; upmu_chr_vol_enum chr_det_lv_list[UPMU_MAX_CHARGER_DET_HV_NUM]; kal_uint32 chr_det_hv_list_num; upmu_chr_vol_enum chr_det_hv_list[UPMU_MAX_CHARGER_DET_HV_NUM]; kal_uint32 chr_vbat_cc_list_num; upmu_chr_vol_enum chr_vbat_cc_list[UPMU_MAX_VBAT_CC_DET_NUM]; kal_uint32 chr_vbat_cv_list_num; upmu_chr_vol_enum chr_vbat_cv_list[UPMU_MAX_VBAT_CV_DET_NUM]; MediaTek Confidential
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 16 of 31
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
kal_uint32 chr_vbat_ov_list_num; upmu_chr_vol_enum chr_vbat_ov_list[UPMU_MAX_VBAT_OV_NUM]; }upmu_chr_profile_entry;
LY
MT6573 Confidential B
3.1.9
upmu_oc_profile_entry
It ‘s used in this driver. typedef struct { kal_uint32 addr; }upmu_oc_profile_entry;
3.1.10 upmu_strup_profile_entry It ‘s used in this driver. typedef struct { kal_uint32 addr; }upmu_strup_profile_entry;
3.1.11 upmu_lposc_profile_entry It ‘s used in this driver. typedef struct { kal_uint32 addr; }upmu_lposc_profile_entry;
3.1.12 upmu_retention_profile_entry It ‘s used in this driver. typedef struct { kal_uint32 addr; }upmu_retention_profile_entry;
3.1.13 upmu_chr_current_enum
FO
It ‘s used in this driver. typedef enum { UPMU_CHARGE_CURRENT_0_MA = PMIC_ADPT_CHARGE_CURRENT_0_MA, UPMU_CHARGE_CURRENT_50_MA = PMIC_ADPT_CHARGE_CURRENT_50_MA, UPMU_CHARGE_CURRENT_100_MA = PMIC_ADPT_CHARGE_CURRENT_100_MA, UPMU_CHARGE_CURRENT_150_MA = PMIC_ADPT_CHARGE_CURRENT_150_MA, UPMU_CHARGE_CURRENT_200_MA = PMIC_ADPT_CHARGE_CURRENT_200_MA, UPMU_CHARGE_CURRENT_250_MA = PMIC_ADPT_CHARGE_CURRENT_250_MA, UPMU_CHARGE_CURRENT_300_MA = PMIC_ADPT_CHARGE_CURRENT_300_MA, MediaTek Confidential
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 17 of 31
LY
MT6573 Confidential B
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
UPMU_CHARGE_CURRENT_350_MA = PMIC_ADPT_CHARGE_CURRENT_350_MA, UPMU_CHARGE_CURRENT_400_MA = PMIC_ADPT_CHARGE_CURRENT_400_MA, UPMU_CHARGE_CURRENT_450_MA = PMIC_ADPT_CHARGE_CURRENT_450_MA, UPMU_CHARGE_CURRENT_500_MA = PMIC_ADPT_CHARGE_CURRENT_500_MA, UPMU_CHARGE_CURRENT_550_MA = PMIC_ADPT_CHARGE_CURRENT_550_MA, UPMU_CHARGE_CURRENT_600_MA = PMIC_ADPT_CHARGE_CURRENT_600_MA, UPMU_CHARGE_CURRENT_650_MA = PMIC_ADPT_CHARGE_CURRENT_650_MA, UPMU_CHARGE_CURRENT_700_MA = PMIC_ADPT_CHARGE_CURRENT_700_MA, UPMU_CHARGE_CURRENT_750_MA = PMIC_ADPT_CHARGE_CURRENT_750_MA, UPMU_CHARGE_CURRENT_800_MA = PMIC_ADPT_CHARGE_CURRENT_800_MA, UPMU_CHARGE_CURRENT_850_MA = PMIC_ADPT_CHARGE_CURRENT_850_MA, UPMU_CHARGE_CURRENT_900_MA = PMIC_ADPT_CHARGE_CURRENT_900_MA, UPMU_CHARGE_CURRENT_950_MA = PMIC_ADPT_CHARGE_CURRENT_950_MA, UPMU_CHARGE_CURRENT_1000_MA = PMIC_ADPT_CHARGE_CURRENT_1000_MA, UPMU_CHARGE_CURRENT_1200_MA = PMIC_ADPT_CHARGE_CURRENT_1200_MA, UPMU_CHARGE_CURRENT_1500_MA = PMIC_ADPT_CHARGE_CURRENT_1500_MA, UPMU_CHARGE_CURRENT_1800_MA = PMIC_ADPT_CHARGE_CURRENT_1800_MA, UPMU_CHARGE_CURRENT_2000_MA = PMIC_ADPT_CHARGE_CURRENT_2000_MA, UPMU_CHARGE_CURRENT_MAX = PMIC_ADPT_CHARGE_CURRENT_MAX }upmu_chr_current_enum;
3.1.14 pmic_adpt_chr_current_enum
FO
It ‘s used in this driver. typedef enum { PMIC_ADPT_CHARGE_CURRENT_0_MA = 0, PMIC_ADPT_CHARGE_CURRENT_50_MA = 50, PMIC_ADPT_CHARGE_CURRENT_100_MA = 100, PMIC_ADPT_CHARGE_CURRENT_150_MA = 150, PMIC_ADPT_CHARGE_CURRENT_200_MA = 200, PMIC_ADPT_CHARGE_CURRENT_250_MA = 250, PMIC_ADPT_CHARGE_CURRENT_300_MA = 300, PMIC_ADPT_CHARGE_CURRENT_350_MA = 350, PMIC_ADPT_CHARGE_CURRENT_400_MA = 400, PMIC_ADPT_CHARGE_CURRENT_450_MA = 450, PMIC_ADPT_CHARGE_CURRENT_500_MA = 500, PMIC_ADPT_CHARGE_CURRENT_550_MA = 550, PMIC_ADPT_CHARGE_CURRENT_600_MA = 600, PMIC_ADPT_CHARGE_CURRENT_650_MA = 650, PMIC_ADPT_CHARGE_CURRENT_700_MA = 700, PMIC_ADPT_CHARGE_CURRENT_750_MA = 750, PMIC_ADPT_CHARGE_CURRENT_800_MA = 800, PMIC_ADPT_CHARGE_CURRENT_850_MA = 850, PMIC_ADPT_CHARGE_CURRENT_900_MA = 900, PMIC_ADPT_CHARGE_CURRENT_950_MA = 950, MediaTek Confidential
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 18 of 31
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
PMIC_ADPT_CHARGE_CURRENT_1000_MA = 1000, PMIC_ADPT_CHARGE_CURRENT_1200_MA = 1200, PMIC_ADPT_CHARGE_CURRENT_1500_MA = 1500, PMIC_ADPT_CHARGE_CURRENT_1800_MA = 1800, PMIC_ADPT_CHARGE_CURRENT_2000_MA = 2000, PMIC_ADPT_CHARGE_CURRENT_MAX }pmic_adpt_chr_current_enum;
LY
MT6573 Confidential B
3.1.15 upmu_ldo_profile
It ‘s used in this driver. upmu_ldo_profile_entry upmu_ldo_profile[] = { // please reference the source code “pmu6573.c” };
3.1.16 upmu_buck_profile
It ‘s used in this driver. upmu_buck_profile_entry upmu_buck_profile[] = { // please reference the source code “pmu6573.c” };
3.1.17 upmu_buck_boost_profile
It ‘s used in this driver. upmu_buck_boost_profile_entry upmu_buck_boost_profile[] = { // please reference the source code “pmu6573.c” };
3.1.18 upmu_kpled_profile
It ‘s used in this driver. upmu_kpled_profile_entry upmu_kpled_profile[] = { // please reference the source code “pmu6573.c” };
3.1.19 upmu_chr_profile
FO
It ‘s used in this driver. upmu_chr_profile_entry upmu_chr_profile[] = { // please reference the source code “pmu6573.c” };
MediaTek Confidential
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 19 of 31
LY
MT6573 Confidential B
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
3.1.20 upmu_oc_profile It ‘s used in this driver. upmu_oc_profile_entry upmu_oc_profile[] = { // please reference the source code “pmu6573.c” };
3.1.21 upmu_strup_profile
It ‘s used in this driver. upmu_strup_profile_entry upmu_strup_profile[] = { // please reference the source code “pmu6573.c” };
3.1.22 upmu_lposc_profile
It ‘s used in this driver. upmu_lposc_profile_entry upmu_lposc_profile[] = { // please reference the source code “pmu6573.c” };
3.1.23 upmu_retention_profile
It ‘s used in this driver. upmu_retention_profile_entry upmu_retention_profile[] = { // please reference the source code “pmu6573.c” };
3.2
Functions
3.2.1
hw_charger_type_detection
Prototype
CHARGER_TYPE hw_charger_type_detection(void) Description
Do the charger type detection Parameters none
none
none
Return Value
FO
typedef enum { CHARGER_UNKNOWN = 0, STANDARD_HOST, CHARGING_HOST, MediaTek Confidential
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 20 of 31
LY
MT6573 Confidential B
Prototype
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
NONSTANDARD_CHARGER, STANDARD_CHARGER, } CHARGER_TYPE;
3.2.2
pmu6573_hw_init
Prototype
void pmu6573_hw_init(void) Description
PMU HW initialization. Depending on the PMU Driver Setting SPEC. Parameters none
none
none
Return Value none
3.2.3
pmu6573_pmu_customization
Prototype
void pmu6573_pmu_customization(void) Description
HW init settings for customization. Parameters none
none
none
Return Value none
3.2.4
pmu6573_chrdet_eint_irq
Prototype
void pmu6573_chrdet_eint_irq(void) Description
PMU interrupt handler. (charger detection) Parameters none
none
none
Return Value none
3.2.5
pmu6573_init
Prototype
void pmu6573_init(void) Description
Main init function.
FO
Parameters none
none
none
MediaTek Confidential
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 21 of 31
LY
MT6573 Confidential B
Prototype
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
Return Value none
3.2.6
upmu_ldo_enable
Prototype
void upmu_ldo_enable(upmu_ldo_list_enum ldo, kal_bool enable) Description
LDO enable / disable function Parameters IN
upmu_ldo_list_enum
LDOs SPEC definition
IN
kal_bool
True / False
Return Value none
3.2.7
upmu_ldo_on_sel
Prototype
void upmu_ldo_on_sel(upmu_ldo_list_enum ldo, upmu_ldo_on_sel_enum sel) Description
LDO enable control selection Parameters IN
IN
upmu_ldo_list_enum
LDOs SPEC definition
upmu_ldo_on_sel_enum
typedef enum { LDO_ENABLE_WITH_SRCLKEN = 0, LDO_ENABLE_LDO_EN_REGISTER = 1 }upmu_ldo_on_sel_enum;
Return Value none
3.2.8
upmu_ldo_vol_sel
Prototype
void upmu_ldo_vol_sel(upmu_ldo_list_enum ldo, upmu_ldo_vol_enum vol) Description
LDO output voltage selection Parameters IN
upmu_ldo_list_enum
LDOs SPEC definition
IN
upmu_ldo_vol_enum
Please see the voltage table
Return Value
FO
none
MediaTek Confidential
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 22 of 31
upmu_ldo_ndis_enable
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
3.2.9
LY
MT6573 Confidential B
Prototype
void upmu_ldo_ndis_enable(upmu_ldo_list_enum ldo, kal_bool enable) Description
NMOS dis-charge enable Parameters IN
upmu_ldo_list_enum
LDOs SPEC definition
IN
kal_bool
True / False
Return Value none
3.2.10 upmu_ldo_stb_enable Prototype
void upmu_ldo_stb_enable(upmu_ldo_list_enum ldo, kal_bool enable) Description
Battery driver use this function to inform the Android service to get information Parameters IN
upmu_ldo_list_enum
LDOs SPEC definition
IN
kal_bool
True / False
Return Value none
3.2.11 upmu_ldo_oc_auto_off Prototype
void upmu_ldo_oc_auto_off(upmu_ldo_list_enum ldo, kal_bool auto_off) Description
Enable to power-off the Vcama automatically if the VCAMA_OC_FLAG been asserted Parameters IN
upmu_ldo_list_enum
LDOs SPEC definition
IN
kal_bool
True / False
Return Value none
3.2.12 upmu_ldo_ocfb_enable Prototype
void upmu_ldo_ocfb_enable(upmu_ldo_list_enum ldo, kal_bool enable) Description
over-current fold-back enable Parameters
upmu_ldo_list_enum
FO
IN IN
kal_bool
LDOs SPEC definition True / False
Return Value MediaTek Confidential
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 23 of 31
LY
MT6573 Confidential B
Prototype
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
none
3.2.13 upmu_ldo_get_oc_status Prototype
kal_bool upmu_ldo_get_oc_status(upmu_ldo_list_enum ldo) Description
The flag informs some LDO over current status have been asserted Parameters IN
upmu_ldo_list_enum
LDOs SPEC definition
Return Value
True for exist, false for not exist
3.2.14 upmu_ldo_get_status Prototype
kal_bool upmu_ldo_get_status(upmu_ldo_list_enum ldo) Description
LDO on/off status Parameters IN
upmu_ldo_list_enum
LDOs SPEC definition
Return Value
True for exist, false for not exist
3.2.15 upmu_ldo_oc_status Prototype
kal_bool upmu_ldo_oc_status(upmu_ldo_list_enum ldo) Description
The flag informs some LDO over current status have been asserted Parameters IN
upmu_ldo_list_enum
LDOs SPEC definition
Return Value
True for exist, false for not exist
3.2.16 upmu_ldo_status Prototype
kal_bool upmu_ldo_status(upmu_ldo_list_enum ldo) Description
LDO on/off status Parameters
upmu_ldo_list_enum
FO
IN
LDOs SPEC definition
Return Value True for exist, false for not exist MediaTek Confidential
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 24 of 31
LY
MT6573 Confidential B
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
3.2.17 upmu_ldo_stb_td Prototype
void upmu_ldo_stb_td(upmu_ldo_list_enum ldo, upmu_ldo_stb_td_enum sel) Description
The delay time setting for LDO soft start Parameters IN
upmu_ldo_list_enum
LDOs SPEC definition
IN
upmu_ldo_stb_td_enum
Value depends on datasheet
Return Value none
3.2.18 upmu_ldo_cal Prototype
void upmu_ldo_cal(upmu_ldo_list_enum ldo, kal_uint8 val) Description
LDO output voltage calibration Parameters IN
upmu_ldo_list_enum
LDOs SPEC definition
IN
kal_uint8
Value depends on datasheet
Return Value none
3.2.19 upmu_ldo_en_force_enable Prototype
void upmu_ldo_en_force_enable(upmu_ldo_list_enum ldo, kal_bool enable) Description
LDO force enable control signal Parameters IN
upmu_ldo_list_enum
LDOs SPEC definition
IN
kal_bool
True / False
Return Value none
3.2.20 upmu_ldo_oc_td Prototype
void upmu_ldo_oc_td(upmu_ldo_list_enum ldo, upmu_ldo_oc_td_enum sel) Description
The deglitch time constant for LDO over-current status Parameters upmu_ldo_list_enum
FO
IN IN
upmu_ldo_oc_td_enum
LDOs SPEC definition
Please see the datasheet
Return Value MediaTek Confidential
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 25 of 31
LY
MT6573 Confidential B
Prototype
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
none
3.2.21 upmu_buck_enable Prototype
void upmu_buck_enable(upmu_buck_list_enum buck, kal_bool enable) Description
Enable control signal Parameters IN
upmu_buck_list_enum
BUCKs SPEC definition
IN
kal_bool
True / False
Return Value none
3.2.22 upmu_buck_rs Prototype
void upmu_buck_rs(upmu_buck_list_enum buck, upmu_buck_rs_enum sel) Description
The local/remote sense setting Parameters IN
IN
upmu_buck_list_enum
BUCKs SPEC definition
upmu_buck_rs_enum
typedef enum { BUCK_LOCAL_SENSE = 0, BUCK_REMOTE_SENSE = 1 }upmu_buck_rs_enum;
Return Value none
3.2.23 upmu_buck_sf_str_mode Prototype
void upmu_buck_sf_str_mode(upmu_buck_list_enum buck, upmu_buck_sf_str_mode_enum sel) Description
soft-start mode setting Parameters IN
BUCKs SPEC definition
upmu_buck_sf_str_mode_enum
typedef enum { BUCK_SOFT_START_DIRECT_SWITCH = 0, BUCK_SOFT_START }upmu_buck_sf_str_mode_enum;
FO
IN
upmu_buck_list_enum
Return Value none
MediaTek Confidential
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 26 of 31
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
3.2.24 upmu_buck_normal_voltage_adjust
LY
MT6573 Confidential B
Prototype
void upmu_buck_normal_voltage_adjust(upmu_buck_list_enum buck, upmu_buck_vol_enum vol) Description
The output voltage soft adjustment Parameters IN
upmu_buck_list_enum
BUCKs SPEC definition
IN
upmu_buck_vol_enum
Please see the voltage table
Return Value none
3.2.25 upmu_buck_oc_auto_off Prototype
void upmu_buck_oc_auto_off(upmu_buck_list_enum buck, kal_bool auto_off) Description
Enable to power-off the BUCK automatically if the BUCK_OC_FLAG been asserted Parameters IN
upmu_buck_list_enum
BUCKs SPEC definition
IN
kal_bool
True / False
Return Value none
3.2.26 upmu_buck_ocfb_enable Prototype
void upmu_buck_ocfb_enable(upmu_buck_list_enum buck, kal_bool enable) Description
BUCK over-current fold-back enable Parameters IN
upmu_buck_list_enum
BUCKs SPEC definition
IN
kal_bool
True / False
Return Value none
3.2.27 upmu_buck_stb_enable Prototype
void upmu_buck_stb_enable(upmu_buck_list_enum buck, kal_bool enable) Description
BUCK soft-start enable Parameters
upmu_buck_list_enum
FO
IN IN
kal_bool
BUCKs SPEC definition True / False
Return Value MediaTek Confidential
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 27 of 31
LY
MT6573 Confidential B
Prototype
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
none
3.2.28 upmu_buck_get_oc_status Prototype
kal_bool upmu_buck_get_oc_status(upmu_buck_list_enum buck) Description
The over current status have been assert or not Parameters IN
upmu_buck_list_enum
BUCKs SPEC definition
Return Value
True for exist / False for not exist
3.2.29 upmu_buck_get_status Prototype
kal_bool upmu_buck_get_status(upmu_buck_list_enum buck) Description
The on/off status Parameters IN
upmu_buck_list_enum
BUCKs SPEC definition
Return Value
True for exist / False for not exist
3.2.30 upmu_buck_modeset Prototype
void upmu_buck_modeset(upmu_buck_list_enum buck, upmu_buck_modeset_enum sel) Description
Manual mode setting Parameters IN
IN
upmu_buck_list_enum
BUCKs SPEC definition
upmu_buck_modeset_enum
typedef enum { BUCK_AUTO_MODE = 0, BUCK_FORCE_PWM_MODE }upmu_buck_modeset_enum;
Return Value none
3.2.31 upmu_buck_sleep_voltage_adjust Prototype
FO
void upmu_buck_sleep_voltage_adjust(upmu_buck_list_enum buck, upmu_buck_vol_enum vol) Description MediaTek Confidential
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 28 of 31
Prototype
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
The output voltage soft adjustment in sleep mode
LY
MT6573 Confidential B
Parameters IN
upmu_buck_list_enum
BUCKs SPEC definition
IN
upmu_buck_vol_enum
The voltage table
Return Value none
3.2.32 upmu_is_buck_mode Prototype
kal_bool upmu_is_buck_mode(upmu_buck_list_enum buck) Description
Check LDO / BUCK mode Parameters IN
upmu_buck_list_enum
BUCKs SPEC definition
Return Value none
3.2.33 upmu_buck_oc_td Prototype
void upmu_buck_oc_td(upmu_buck_list_enum buck, upmu_buck_oc_td_enum val) Description
The deglitch time constant for BUCK over-current status Parameters IN
upmu_buck_list_enum
BUCKs SPEC definition
IN
upmu_buck_oc_td_enum
Please reference the datasheet
Return Value none
3.2.34 upmu_buck_stb_td Prototype
void upmu_buck_stb_td(upmu_buck_list_enum buck, upmu_buck_stb_td_enum val) Description
The delay time setting for BUCK soft start Parameters IN
upmu_buck_list_enum
BUCKs SPEC definition
IN
upmu_buck_stb_td_enum
Please reference the datasheet
FO
Return Value
MediaTek Confidential
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 29 of 31
Customization
4.1
Customization Items
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
4
LY
MT6573 Confidential B
FO
Only some LDOs can be customized. Those LDOs are initialized in the system booting time depended on the project requirements.
MediaTek Confidential
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 30 of 31
LY
MT6573 Confidential B
Build
5.1
Source Code Structure & File Description
M R ED yu IA .li@ T E tin K C no O mo NF bil ID e.c EN om T I US AL EO N
5
File
Description
alps\mediatek\platform\mt6573\[kernel|UBOOT]\drivers\power upmu_common_sw.h
The prototype of the uniform PMU APIs
alps\mediatek\platform\mt6573\[kernel|UBOOT]\drivers\power upmu_common.c
The implementation of the uniform PMU APIs
alps\mediatek\platform\mt6573\[kernel|UBOOT]\drivers\power upmu_hw.h
The control bits of the uniform APIs
alps\mediatek\platform\mt6573\[kernel|UBOOT]\drivers\power upmu_sw.h
The value of control bits of the uniform APIs
alps\mediatek\platform\mt6573\[kernel|UBOOT]\drivers\power pmu6573_hw.h
The address of each group
alps\mediatek\platform\mt6573\[kernel|UBOOT]\drivers\power pmu6573_sw.h
The chip specific of each group
alps\mediatek\platform\mt6573\[kernel|UBOOT]\drivers\power pmu6573.c
5.2
The Group Profiles of the chip
Build Option
FO
In alps\mediatek\config\[project_name]\autoconfig\kconfig\project, use CONFIG_MTK_PMU=y for enabling the PMU driver.
MediaTek Confidential
© 2010 - 2011 MediaTek Inc.
This document contains information that is proprietary to MediaTek Inc. Unauthorized reproduction or disclosure of this information in whole or in part is strictly prohibited.
Page 31 of 31