这个修个是在mtk android11上的 , 就是个进入oem解锁流程 , 下面这部分代码就是开机检测按键 , 然后进入不同模式的。如果要修改其他的 也是大同小异。
主要对 Mediatek bootloader 的锁定和解锁流程进行了优化,改变了检测按键的方式。
修改的文件:
vendor/mediatek/proprietary/bootable/bootloader/lk/app/mt_boot/sec_unlock.c
文件修改说明:
sec_unlock.c
: 在 fastboot 的 OEM 锁定和解锁函数中,修改了检测按键的方式。原来的方式是直接检测 GPIO80 的状态,现在改为使用mtk_detect_key
函数检测MT65XX_MENU_OK_KEY
是否被按下。
--- .../proprietary/bootable/bootloader/lk/app/mt_boot/sec_unlock.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/vendor/mediatek/proprietary/bootable/bootloader/lk/app/mt_boot/sec_unlock.c b/vendor/mediatek/proprietary/bootable/bootloader/lk/app/mt_boot/sec_unlock.c index 3f486bf..e7ed97c 100755 --- a/vendor/mediatek/proprietary/bootable/bootloader/lk/app/mt_boot/sec_unlock.c +++ b/vendor/mediatek/proprietary/bootable/bootloader/lk/app/mt_boot/sec_unlock.c @@ -447,7 +447,7 @@ void fastboot_oem_unlock(const char *arg, void *data, unsigned sz) fastboot_okay(""); } break; - } else if (mt_get_gpio_in((GPIO80 | 0x80000000)) == 0/*mtk_detect_key(MT65XX_MENU_OK_KEY)*/) { //VOL_DOWN + } else if (mtk_detect_key(MT65XX_MENU_OK_KEY)) { //VOL_DOWN video_printf("return to fastboot in 3s\n"); mdelay(3000); fastboot_boot_menu(); @@ -509,7 +509,7 @@ void fastboot_oem_lock(const char *arg, void *data, unsigned sz) fastboot_okay(""); } break; - } else if (mt_get_gpio_in((GPIO80 | 0x80000000)) == 0/*mtk_detect_key(MT65XX_MENU_OK_KEY)*/) { //VOL_DOWN + } else if (mtk_detect_key(MT65XX_MENU_OK_KEY)) { //VOL_DOWN video_printf("return to fastboot in 3s\n"); mdelay(3000); fastboot_boot_menu(); -- 1.9.1