Android Mediatek bootloader oem锁定和解锁流程

本文涉及的产品
文档翻译,文档翻译 1千页
文本翻译,文本翻译 100万字符
图片翻译,图片翻译 100张
简介: Android Mediatek bootloader oem锁定和解锁流程

这个修个是在mtk android11上的 , 就是个进入oem解锁流程  , 下面这部分代码就是开机检测按键 , 然后进入不同模式的。如果要修改其他的 也是大同小异。



主要对 Mediatek bootloader 的锁定和解锁流程进行了优化,改变了检测按键的方式。

修改的文件:

  1. vendor/mediatek/proprietary/bootable/bootloader/lk/app/mt_boot/sec_unlock.c

文件修改说明:

  1. 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



相关文章
|
12天前
|
缓存 前端开发 Android开发
【04】flutter补打包流程的签名过程-APP安卓调试配置-结构化项目目录-完善注册相关页面-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程
【04】flutter补打包流程的签名过程-APP安卓调试配置-结构化项目目录-完善注册相关页面-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程
【04】flutter补打包流程的签名过程-APP安卓调试配置-结构化项目目录-完善注册相关页面-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程
|
16天前
|
Dart 前端开发 Android开发
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
|
26天前
|
测试技术 Android开发 开发者
【03】优雅草央千澈详解关于APP签名以及分发-上架完整流程-第三篇安卓APP上架华为商店后面的步骤-华为应用商店相对比较麻烦一些-华为商店安卓上架
【03】优雅草央千澈详解关于APP签名以及分发-上架完整流程-第三篇安卓APP上架华为商店后面的步骤-华为应用商店相对比较麻烦一些-华为商店安卓上架
|
4月前
|
Android开发
Android面试之Activity启动流程简述
Android面试之Activity启动流程简述
108 6
|
4月前
|
XML 前端开发 Android开发
Android面试高频知识点(3) 详解Android View的绘制流程
Android面试高频知识点(3) 详解Android View的绘制流程
Android面试高频知识点(3) 详解Android View的绘制流程
|
4月前
|
消息中间件 Android开发 索引
Android面试高频知识点(4) 详解Activity的启动流程
Android面试高频知识点(4) 详解Activity的启动流程
39 3
|
4月前
|
XML 前端开发 Android开发
Android面试高频知识点(3) 详解Android View的绘制流程
Android面试高频知识点(3) 详解Android View的绘制流程
37 2
|
4月前
|
XML 前端开发 Android开发
Android View的绘制流程和原理详细解说
Android View的绘制流程和原理详细解说
67 3
|
4月前
|
Android开发
Android面试之Activity启动流程简述
Android面试之Activity启动流程简述
28 0
|
5月前
|
Android开发 开发者
Android面试之Activity启动流程简述
每个Android开发者都熟悉的Activity,但你是否了解它的启动流程呢?本文将带你深入了解。启动流程涉及四个关键角色:Launcher进程、SystemServer的AMS、应用程序的ActivityThread及Zygote进程。核心在于AMS与ActivityThread间的通信。文章详细解析了从Launcher启动Activity的过程,包括通过AIDL获取AMS、Zygote进程启动以及ActivityThread与AMS的通信机制。接着介绍了如何创建Application及Activity的具体步骤。整体流程清晰明了,帮助你更深入理解Activity的工作原理。
80 0

热门文章

最新文章