MTK平台uart log 抓取及8 秒重启、开机震动功能总结
2016-11-24 15:11
225 查看
MTK平台串口log抓取
作为一名驱动工程师,有时候必须要抓取uart log来分析故障,查找及验证后,发现一下方法确认能够稳定及正常抓取MTK平台uart log。
1.preloader 中配置串口号
bootable/bootloader/preloader/custom/aus6753_65u_l1/cust_bldr.mak
如:
CFG_UART_LOG :=UART1
CFG_UART_META :=UART1
改为:(修改成需要的串口号码,并在PCB上将对应串口Tx引出)
CFG_UART_LOG :=UART3
CFG_UART_META :=UART3
2.lk中设置cmdline里不去关串口
bootable/bootloader/lk/app/mt_boot/mt_boot.c
3.让kernel中到console后不去关闭串口log
MTK 平台添加开机震动功能
在bootable\bootloader\lk\platform\mt6735\platform.c中的 platform_init()函数里面添加下面代码。
vibr_Enable_HW();
mdelay(300);
vibr_Disable_HW();
开机能够振动。但关机后再开机不会振动,原因在于开启了快速开机(IPO)功能。
解决方案:上层修改,将快速开机功能默认关闭,底层在LK中添加开机震动代码。
MTK 平台添加 8 秒重启功能
在main/kernel-3.10/drivers/misc/mediatek/mach/mt6735/len6753_66t_vo/keypad/mtk_kpd.h文件中,修成如下代码:
//#define ONEKEY_REBOOT_NORMAL_MODE
//#define TWOKEY_REBOOT_NORMAL_MODE
#define ONEKEY_REBOOT_OTHER_MODE
//#define TWOKEY_REBOOT_OTHER_MODE
/* KPD_PMIC_RSTKEY_MAP is defined in cust_kpd.h */
#define KPD_PMIC_LPRST_TD 1 /* timeout period. 0: 8sec; 1: 11sec; 2: 14sec; 3: 5sec */
然后从新build load、先format,然后再download即可
作为一名驱动工程师,有时候必须要抓取uart log来分析故障,查找及验证后,发现一下方法确认能够稳定及正常抓取MTK平台uart log。
1.preloader 中配置串口号
bootable/bootloader/preloader/custom/aus6753_65u_l1/cust_bldr.mak
如:
CFG_UART_LOG :=UART1
CFG_UART_META :=UART1
改为:(修改成需要的串口号码,并在PCB上将对应串口Tx引出)
CFG_UART_LOG :=UART3
CFG_UART_META :=UART3
2.lk中设置cmdline里不去关串口
bootable/bootloader/lk/app/mt_boot/mt_boot.c
int boot_linux_fdt(void *kernel, unsigned *tags, char *cmdline, unsigned machtype, void *ramdisk, unsigned ramdisk_size) { ...... #ifdef USER_BUILD //sprintf(cmdline,"%s%s",cmdline," printk.disable_uart=1"); //默认是这句配置,关闭uart sprintf(cmdline,"%s%s",cmdline," printk.disable_uart=0"); //default open uart log by zhangliang #else sprintf(cmdline,"%s%s",cmdline," printk.disable_uart=0 ddebug_query=\"file *mediatek* +p ; file *gpu* =_\""); #endif ...... }
3.让kernel中到console后不去关闭串口log
kernel-3.10/kernel/printk.c inline void mt_disable_uart(void) { if (mt_need_uart_console == 0) { printk("<< printk console disable >>\n"); printk_disable_uart = 1; //0: uart log always on,改为0 即串口log常开 } else { printk("<< printk console can't be disabled >>\n"); } }
MTK 平台添加开机震动功能
在bootable\bootloader\lk\platform\mt6735\platform.c中的 platform_init()函数里面添加下面代码。
vibr_Enable_HW();
mdelay(300);
vibr_Disable_HW();
开机能够振动。但关机后再开机不会振动,原因在于开启了快速开机(IPO)功能。
解决方案:上层修改,将快速开机功能默认关闭,底层在LK中添加开机震动代码。
MTK 平台添加 8 秒重启功能
在main/kernel-3.10/drivers/misc/mediatek/mach/mt6735/len6753_66t_vo/keypad/mtk_kpd.h文件中,修成如下代码:
//#define ONEKEY_REBOOT_NORMAL_MODE
//#define TWOKEY_REBOOT_NORMAL_MODE
#define ONEKEY_REBOOT_OTHER_MODE
//#define TWOKEY_REBOOT_OTHER_MODE
/* KPD_PMIC_RSTKEY_MAP is defined in cust_kpd.h */
#define KPD_PMIC_LPRST_TD 1 /* timeout period. 0: 8sec; 1: 11sec; 2: 14sec; 3: 5sec */
然后从新build load、先format,然后再download即可
相关文章推荐
- MTK平台相关总结#########[FAQ18279]开机时间慢分析 android 系统重启关机流程分析
- MTK平台上电话黑名单功能总结
- mtk平台读写短信总结(载)
- MTK平台Sub Camera支持AF功能
- Android MTK平台最完备的开机动画修改教程
- MTK平台用Socket实现HTTP请求总结
- mtk平台,相关问题总结
- 程序的开机关机重启,开机启动,休眠功能delphi实现
- MTK平台充电调试总结
- android 平台开机自动重启
- MTK 平台memory(emmc)移植常见问题总结
- MTK平台user版本下怎样开启和抓取MTKlog
- 总结win7平台的dep机制-由phoneme jit功能异常说起
- Android MTK平台最完备的开机动画修改教程
- 2416平台,u-boot-1.3.4支持U盘功能问题总结
- MTK平台驱动调试的资料(功能机)
- 二次开发平台数据导入功能问题总结
- mtk平台,相关问题总结
- 高通平台开机logo连续显示调试总结
- MTK平台相关功能支持