Platform: RK3399OS: Android 6.0Kernel: 4.4Version: v2017.04
需求需求是将 Menu 键修改为 Home 键。
Key-Pad 原理按键部分原理图如下
可以看到不同按键串联的电阻值也不同。所以按下不同按键时 ADKEY_IN 的检测电压也会不同(不同阻值分压不同),平台端设计好接收不同电压时对应的功能,就实现了功能按键。
实现getevent 看是否获得按键上报12adb shellgetevent
可以看到我们的 key pad 设备
按下我们需要修改的按键(现在的 MENU 键)
获得键值 0x003b,即 10 进制的 ...
Platform: RockChipOS: Android 6.0Kernel: 4.4WiFi/BT/FM 模组: AP6354
前面的基本概念搜罗于网络;后面的驱动流程分析是根据 RockChip 3399 的 Kernel 部分来进行分析的。
[TOC]
基本概念Wifiwifi 英文全称是 WIreless-FIdelity,翻译成中文就是无线保真,英文简称WiFi。
WLANwlan 英文全名:Wireless Local Area Networks, 无线局域网络。
关系wifi 是实现 wlan 的一种技术。
STA 模式 和 AP 模式AP模式: Access Poin...
Author: YounixPlatform: RK3399OS: Android 6.0Kernel: 4.4Version: v2017.07
[TOC]
RK 的文档中有说到 其 Uboot 是给予 2014.10 官方版本进行开发的,同步更新了主分支的一些关键性更新。
一、Uboot 的编译编译 Uboot 我们所采用的命令如下:12make rk3399_defconfigmake ARCHV=aarch64
我们从编译命令入手,分析 Uboot。
Uboot 配置文件 ×_defconfigrk3399_defconfig 为 uboot 的配置文件,uboot 的配置文件都...
[TOC]
需求去掉移动时唤醒系统功能
解决方法1234567891011a/frameworks/native/services/inputflinger/InputReader.cpp b/frameworks/native/services/inputflinger/InputReader.cppindex 10d35eb..730b733 100644--- a/frameworks/native/services/inputflinger/InputReader.cpp+++ b/frameworks/native/services/inputflinger/InputRead...
Author: YounixPlatform: RK3399OS: Android 6.0Kernel: 4.4Version: v2017.07
[TOC]
之前曾分析过 展讯平台的 Uboot 流程:http://blog.csdn.net/dearsq/article/details/51063207也基于 RK3288 分析过 Android 启动流程:http://blog.csdn.net/dearsq/article/details/53647871
现在借着 RK3399 ,重新整体看一下 uboot 代码。
##前一篇文章中我们了解到了make rk3399_defco...
OS: Android6.0Hardware:RK3399
修改方法 搜索资料了解到,其为 QuickSearchBox。 代码在 packages/apps 中
测试了很多网上的修改 launcher3 源码的方式,都是不行的。
正确改法:在build/target/product/core.mk 去掉 QuickSearchBox
Reference-RIL
负责将 Solicited Request 请求转换成 AT 命令交给 Modem 执行。
将执行结果以 Solicited Response 消息方式反馈给 LibRIL。
负责接受 Modem 主动上报的消息。
Reference-RIL 运行机制1. RIL_init 初始化RIL_init 包括三个步骤:
记录 LibRIL 提供的 RIL_Env 指针,通过它可以调用 LibRIL 提供的相应函数。
启动基于 mainLoop 函数运行的子进程,mainLoop 主要负责监听和接受 Modem 主动上报的 UnSolicited 消息。
返回...
[TOC]
RILC 代码结构12345678hardware/ril/ |- CleanSpec.mk // 编译文件 |- include // 关键头文件目录,包括 ril.h ril_cdma_sms.h |- libril // LibRIL Runtime 运行环境的源文件目录 |- mock-ril |- reference-cdma-sms // CDMA 短信相关代码 |- reference-ril // RIL Stub 实现源码文件目录 |- rild //守护进程源码文件目录
重点在于 libril、reference-...
[TOC]
概述总得来看有这样几个阶段:
BootROM 上电
BootLoader 引导
Linux 内核
init 进程
Zygote 启动
展开一点来看
板子上电后运行固化在 ROM 中的代码,加载 Bootloader 到 RAM。
Bootloader 启动,引导进入 Linux 内核。
Kernel 启动 swapper 进程。即 idle 进程,pid = 0,系统初始化过程中的第一个进程,用于初始化 进程管理、内存管理、加载 Display、Camera Driver、Binder Driver 的工作。Kernel 启动 init 进程(用户进程的祖宗)。pid...
根据 datasheet 和 硬件设计填写 dtsmipi_dsi_init1234567disp_mipi_init: mipi_dsi_init{ compatible = "rockchip,mipi_dsi_init"; rockchip,screen_init = <1>; rockchip,dsi_lane = <4>; rockchip,dsi_hs_clk = <1000>; rockchip,mipi_dsi_num = <1>; };
GPIO
12345mipi_lc...