驱动移植
文章平均质量分 96
Younix脏羊
CSDN 凌乱的草稿本
展开
-
[Android6.0][MTK6737] 长按 Power 没有真正关机 (MTK IPO 功能)
Hardware:MT6737 DeviceOS:Android6.0 Kernel: Linux3.18 HostOS: Ubuntu16.04需求正常开机 45s. 长按 Power 键进行关机后, 在 5s 内立即按住 Power 键进行开机 虽然会正常出现开机动画, 但是会继续之前退出时的状态.比如正在放歌, 关机, 立即开机, 会出现开机动画, 但是在开...原创 2018-05-08 17:40:01 · 1938 阅读 · 0 评论 -
[Android6.0][RK3399] PCIe 接口 4G模块 EC20 调试记录
Platform: RK3399 OS: Android 6.0 Kernel: 4.4 Version: v2017.04 4G Module: EC20-CE一基本概念USB 部分的功能接口APN二驱动移植USB DriverGobiNet Driver 或者 QMI WWANPPP 拨号配置三RIL 移植RIL Driver Integration抓取 An原创 2017-06-30 16:41:14 · 18556 阅读 · 8 评论 -
[Android5.1][RK3288] LCD Mipi 调试方法及问题汇总
1. 完成 dtsi设置参数 timing 初始化 cmds2. 背光相关3. 检查电压4. 调试顺序5. 其它问题原创 2016-08-29 16:50:44 · 42654 阅读 · 13 评论 -
[Android5.1][RK3288] LCD Mipi 初始化长包数据规范问题
目录目录先说问题和结论环境问题真相正文先说问题和结论环境正在 RK3288 调试 Mipi LCD(540×960)问题首先是因为我出现了这样的 Bug: 我的 cmds7 明明填充的是 LP 模式,但是打印中却说是 HS 模式。 我在一个帖子中看到说 cmds 参数 不能为 8 和 16 的情况。 于是错误地将地将两者联系起来,认为参数为 8 或者 16 的情况下,LP 模式原创 2016-08-30 15:42:20 · 6982 阅读 · 0 评论 -
eng、user、userdebug区别简述
user 仅安装标签为 user 的模块userdebug 安装标签为 user、debug 的模块eng 安装标签为 user、debug、eng 的模块转载 2016-09-19 21:11:34 · 12897 阅读 · 0 评论 -
[Android6.0][RK3399] OTA 差异包制作方法
Platform: RK3399 OS: Android 6.0 Version: v2016.08一、全编二、生成原始的 OTA 完整包三、修改了一些内容四、生成 OTA 差异包原创 2016-11-16 13:47:52 · 3571 阅读 · 0 评论 -
[Android6.0][RK3399] PWM Backlight 驱动分析
Platform: RK3399 OS: Android 6.0 Kernel: 4.4DTS 分析驱动分析问题集锦占空比到 20 就黑了到 80 就满了原创 2016-11-17 14:30:19 · 6595 阅读 · 0 评论 -
[Android6.0][RK3399] SDIO 接口 Wifi 驱动流程分析 (AP6354)
Platform: RockChip OS: Android 6.0 Kernel: 4.4 WiFi/BT/FM 模组: AP6354 前面的基本概念搜罗于网络; 后面的驱动流程分析是根据 RockChip 3399 的 Kernel 部分来进行分析的。原创 2016-11-24 12:00:22 · 16127 阅读 · 4 评论 -
[Android6.0][RK3399] Type-C 驱动流程分析
基本概念USB 控制器OHCIOpen Host Controller InterfaceUHCIUniversal Host Controller InterfaceEHCIEnhanced Host Controller InterfaceXHCIeXtensible Host Controller InterfaceDWC3DRD USB HOSTUSB HSICUSB OTG原创 2016-11-28 10:54:24 · 6342 阅读 · 0 评论 -
[Android6.0][RK3399] 双屏异显代码实现流程分析(一)
Platform: RK3399 OS: Android 6.0 Version: v2016.08代码流程代码详解mipi dsi 接口信息初始化fb相关信息读取timing 参数初始化mipi dsi controller 初始化lcdc控制器注册本文分为两部分。 《[RK3399] 双屏异显代码实现流程分析(一)》为分析 RK video 部分标准的代码(base o原创 2017-02-13 15:06:42 · 12645 阅读 · 5 评论 -
[Android6.0][RK3399] 双屏异显代码实现流程分析(二)
Patch Codedtsirk3399-androiddtsirk3399-evb-rev3-androiddtslcdc 控制器rk322x_lcdccrk_fbctiming 初始化rk_screencrk32_dpcrk32_mipi_dsihrk_fbhlcd 的 dtsiPlatform: RK3399 OS: Android 6.0 Version: v原创 2017-02-13 16:35:38 · 13253 阅读 · 13 评论 -
[Android6.0][RK3399] USB接口Touchscreen驱动流程分析
Platform: RK3399 OS: Android 6.0 Version: v2016.08前言流程分析module_usb_driverusbtouch_probeusbtouch_openusbtouch_irqusbtouch_device_infousbtouch_dev_info前言流程分析module_usb_driverregister/unregist原创 2017-03-01 14:57:04 · 5473 阅读 · 0 评论 -
[Linux][RK3399] DRM HDMI 调试小结
Platform: RK3399 OS: Android 6.0 Kernel: 4.4 Version: v2017.04 调试流程1. 确认板子是否识别到了显示器的 EDID echo 0x1f > /sys/module/drm/parameters/debug插拔一下hdmi 然后dmesg | grep drm, 看看里面的信息是否解析到了edid[ 405.576876]原创 2017-07-21 14:27:28 · 19046 阅读 · 4 评论 -
[Android6.0][RK3399][BUG] 插上 HDMI 时开机解锁锁屏后死机
Platform: RK3399 OS: Android 6.0 Kernel: Linux4.4 Version: v2017.03出现现象插上 HDMI 情况下开机,解锁锁屏,会死机。Kernel 出现如下 log 信息:[ 18.415959] rk322x-lcdc vop0: intr post buf empty![ 18.416010] rk322x-lcdc vo原创 2017-08-16 14:14:43 · 2440 阅读 · 4 评论 -
[Android6.0][RK3399] 电池系统(二)BQ IC 添加 DC 充电功能
Platform: RK3399 OS: Android 6.0 Kernel: 4.4 Version: v2017.04 IC: TI BQ25700、RK808解决思路代码添加验证结果遇到 Bug在上一章 [RK3399] Android 电池系统(一) BQ25700 IC 驱动分析 中我们分析了 BQ IC 的驱动加载流程。我们也知道了平台默认的代码,定位是 PD原创 2017-05-26 11:50:18 · 5129 阅读 · 3 评论 -
[Android6.0][MTK6737] UVC Camera (MJPEG) 移植
Hardware:MT6737 DeviceOS:Android6.0 Kernel: Linux3.18 HostOS: Ubuntu16.04基础知识USB video class(又称为USB video device class or UVC)就是USB device class视频产品在不需要安装任何的驱动程序下即插即用,包括摄像头、数字摄影机、模拟视频转换器、电视卡及静态...原创 2018-05-08 17:26:42 · 7259 阅读 · 6 评论 -
[Android6.0][MTK6737] 设置屏幕旋转 270 度
原创 2018-05-08 17:08:19 · 3388 阅读 · 2 评论 -
[Android6.0][RK3399] 更换 64GeMMC 后无法启动的问题
Author: Younix Platform: RK3399 OS: Android 6.0 Kernel: 4.4 Version: v2018.05错误日志解决方案错误日志[ 2.002835] dwmmc_rockchip fe310000.dwmmc: IDMAC supports 32-bit address mode.[ ...原创 2018-05-16 23:07:25 · 7994 阅读 · 4 评论 -
[Android6.0][MTK6737] 启动流程分析
OS:Android6.0 Hardware:MTK6737一、启动流程概览1. BootRom2. Preloader3. LK4. Kernel5. Android二、Bootloader 引导2.1 preloader 启动过程2.1.1 preloader 的功能preloader 中的硬件部分2.1.2 preloader 启动代码2.2 LK ...原创 2018-03-09 11:20:23 · 5299 阅读 · 1 评论 -
[Android6.0][MTK6737] MTK 编译环境搭建
Hardware: MTK6737 Android: 6.0(API 23) Kernel: Linux 3.4.67安装编译环境并编译安装编译环境依赖包bootloader 和 kernel 编译Android 编译打包硬件参数MTK6737Check SDK Version编译中碰到的问题clang 问题STATIC_LIBRARIES SH...原创 2018-03-09 11:13:42 · 8503 阅读 · 7 评论 -
[Android6.0][RK3399] 实现耳机和喇叭自动切换功能
Platform: RK3399 OS: Android 6.0 Kernel: Linux4.4 Version: v2017.03需求分析实现方式进行编码dts 中添加相应 GPIO并打开声卡驱动修改 snd_soc_card 结构体添加相关成员变量添加驱动代码需求分析RK 默认的声卡 RT5651(Card 0)是从耳机(devic原创 2017-08-22 20:49:12 · 10754 阅读 · 6 评论 -
[Android6.0][RK3399] Mipi LCD 通用移植调试流程
前言一扣出屏 datasheet 中的关键信息General SpecificationPower onoff sequenceTiming二根据屏参 和 硬件设计填写 dts1 创建屏的 dtsi 文件11 Mipi Host12 Timing13 init cmds展讯平台MTK 平台 Mipi DSI 协议中 Generic 和 DCS 的区别RK 平台原创 2017-08-17 20:58:35 · 25285 阅读 · 24 评论 -
[Android6.0][RK3399] PCIe 转 SATA 调试步骤
Platform: RK3399 OS: Android 6.0 Kernel: 4.4 Version: v2017.04PCI 基本调试手段busybox lspcicat procpartitionsmountPCIe 调试步骤调试 PCIe 转 SATA 设备PCI 基本调试手段busybox lspcilspci 命令查看 pci 设备。出现如下信息:0c:00.0 0原创 2017-08-07 20:03:26 · 10785 阅读 · 5 评论 -
[Linux][RK3399] 以太网调试 — 利用 ping 和 pathping 工具
网络配置DHCPStatic IP Address图形界面调试步骤ping 回环地址 loopback addressping 本地计算机的 IP 地址 local ip addressping 默认网关 IP 地址ping 远程主机 IP 地址ping 远程主机名pathping 远程主机 IP错误归纳本地地址返回 0000ping 远程主机 ip 成功名称失败网络配置原创 2017-09-12 14:50:01 · 4464 阅读 · 0 评论 -
[Android6.0][RK3399] 开机前几秒串口打印异常问题
Platform: RK3399 OS: Android 6.0 Kernel: Linux4.4 Version: v2017.03问题现象调试步骤抓取串口波形检查上电获取 kernel 起来后实际配置的 pmu io 电压获取开机阶段实际配置的 pmu io 电压检查 PMUIO2 power domain 部分驱动强度是否正确问题现象开机 0-3 s 串口打印异常,l原创 2017-08-31 19:26:28 · 6324 阅读 · 8 评论 -
[Android6.0][RK3399] TypeC 基础知识
TypeC 基本特性引脚定义TypeC 如何确定充电方向TypeC 确定设备类型的原理usb 模式音频配件模式DP 模式 和 PCIe 模式TypeC 基本特性正反插速度快 10Gbps引脚定义TX/RX 两组差分信号用来进行数据传输。CC1 和 CC2 作用: 1. 区分正反面 2. 区分 DFP (Host)和 UFP(Device) 3. 配置 VBUS,有 USB T原创 2017-08-30 18:19:58 · 4756 阅读 · 0 评论 -
[Android6.0][RK3399] 串口无法输入输出 串口打印乱码
Platform: RK3399 OS: Android 6.0 Version: v2017.03串口无任何输出无法输入串口有输出为乱码原创 2017-04-01 09:51:32 · 7569 阅读 · 1 评论 -
[Android6.0][RK3399] 去掉滑动锁屏(swipe lock)
Platform: RK3399 OS: Android 6.0 Version: v2017.03解决方法(一)在 ~/rk_Project_3399/device/rockchip/rk3399/rk3399_YOUR_DEVICE 下的 system.prop 中添加 ro.lockscreen.disable.default=true重新编译后,成功去掉锁屏,锁屏失效。代码流程该属原创 2017-04-01 11:03:12 · 4277 阅读 · 0 评论 -
[Linux] 内核中 SPI 设备驱动模型(Platform设备驱动方式)
传统 Platform设备驱动方式 中 SPI 驱动模型原创 2016-06-30 14:54:02 · 1603 阅读 · 0 评论 -
[Linux] SPI 设备驱动模型(SPI 协议基础)
SPI 总线概念及特点概念SPI(Serial Peripheral Interface)穿行外围设备接口,全双工三线同步串行通信接口。原创 2016-07-05 15:49:24 · 1071 阅读 · 0 评论 -
[Linux] SPI 设备驱动模型(以 Ad714x CapTouch 驱动分析)
Linux 下的 SPI 设备驱动模型(Ad714x CapTouch 驱动分析)原创 2016-07-06 15:09:59 · 6519 阅读 · 0 评论 -
[Linux] 串口调试工具 Minicom 详细介绍
Minicom 使用方法。退出。导出串口 Log。原创 2016-05-30 10:38:00 · 7333 阅读 · 0 评论 -
[Linux]input 子系统学习笔记(简单范例和四个基本函数)
输入子系统是为了将输入设备的功能呈现给应用程序。 它支持 鼠标、键盘、蜂鸣器、触摸屏、传感器等需要不断上报数据的设备。分析了四个函数:1. input_allocate_device 在内存中为输入设备结构体分配空间并进行初始化。2. input_register_device()->input_attach_handler()->input_match_device()原创 2016-05-19 14:54:51 · 8045 阅读 · 0 评论 -
[SPRD]展讯平台下电容式触摸屏(TP)的移植流程
Android 平台电容式触摸屏硬件基本原理: http://blog.csdn.net/dearsq/article/details/51251025Android 平台电容式触摸屏的驱动基本原理: http://blog.csdn.net/dearsq/article/details/51251009移植流程原创 2016-04-27 14:20:39 · 4492 阅读 · 1 评论 -
[SPRD][uboot]展讯平台启动流程介绍
bootloader 分为 stage1 和 stage2 两部分。u-boot 亦然。 stage1 中的多依赖于 CPU 体系结构代码,常放在 stage1 且可用汇编语言来实现。 stage2 中的由 C 语言来实现,不仅易于实现复杂的功能,且有更好的可读性和移植性。原创 2016-04-05 11:08:38 · 5900 阅读 · 0 评论 -
[SPRD]展讯平台 LCD(Mipi) 加载流程分析
stage1 阶段的详细分析参见 uboot 详细注释讲解 我们从 uboot 的 stage2 开始分析。加载流程分析首先是完成硬件的初始化。原创 2016-04-05 15:56:18 · 12554 阅读 · 0 评论 -
[SPRD]展讯平台 LCD(Mipi)移植步骤及问题归纳
Backlight 移植LCD uboot 和 Kernel 移植原创 2016-04-22 12:07:25 · 12899 阅读 · 1 评论 -
NXP NFC kernel 分析
初始化与卸载从 module_init 和 module_exit 开始读static int __init pn544_dev_init(void){ pr_info("Loading pn544 driver\n"); return i2c_add_driver(&pn544_driver);}module_init(pn544_dev_init);static void原创 2016-02-17 16:54:08 · 4279 阅读 · 5 评论 -
Android 平台电容式触摸屏的驱动基本原理
硬件工作原理驱动基本原理 中断(工作队列) input子系统 电容式触摸屏的驱动基本原理原创 2016-04-27 12:24:09 · 10611 阅读 · 0 评论 -
[Linux] MODULE_DEVICE_TABLE
MODULE_DEVICE_TABLE原创 2016-07-18 16:41:57 · 1333 阅读 · 0 评论