- 博客(83)
- 收藏
- 关注
原创 Android init阶段loop回环设备的使用
环回设备是一种特殊的块设备,它允许你将一个普通的文件当作块设备来使用。这种功能在需要将文件系统挂载到一个文件上时特别有用,比如在处理磁盘镜像文件时。
2025-02-17 17:50:19
534
原创 Rockchip Android平台实时读取芯片频率和负载的脚本
脚本适用于Rockchip Android平台的所有芯片,可以实时读取cpu/gpu/ddr/npu等模块的频率和负载情况。
2024-12-24 11:22:44
457
2
原创 Chromium for Android 浏览器的编译和安装
这篇文章介绍Android版本Chromium浏览器的源码下载、编译、安装的过程
2024-12-12 11:08:12
1466
3
原创 RK3576 Android平台开机log分析
上面这段是显示相关的初始化,只有DRM正常初始化后正常显示框架才能正常启动,如果出现panel或者dp或者HDMI初始化失败就会导致drm初始化失败,从而导致android层surfaceflinger初始化失败,出现这种情况可以先尝试把报错的显示设备(dsi/dp/hdmi)dts中disabled。//上面显示的是vop的相关信息,包括各个vp的图层分配,显示屏DSI的分辨率信息等。//SPL 的flash初始化,本机是UFS的flash,下面是UFS的初始化信息。
2024-06-04 11:39:27
2404
原创 RK3588 VOP图层分配介绍
RK3566 IC 实现上有主图层和镜像图层的区别,即镜像图层 Cluster1 只能从主图层 Cluster0 对应的地址取数,同理 Esmart1/Smart1 只能从 Esmart0/Smart0 对应的地址取数,所以我们需要保证主图层被优先使用。图层分配的基本原则是:把所有图层(rk3568 有 6 个图层,rk3588 有 8 个图层)平均分配给各个使用的 VP,不使用的 VP 一般不分配图层。属性,为该 VP 对应的 crtc 分配一个 cursor 图层。
2024-06-03 20:36:58
3605
原创 RK3576 Android平台SD启动
SD启动时板子emmc或者ufs等存储设备需要把固件擦除掉,处于空片状态,否则会导致SD卡启动失败。使用瑞芯微创建升级磁盘工具V1.78,选择 SD启动,然后按工具提示步骤操作即可。按上面修改后完整编译update.img固件。
2024-05-09 16:33:13
944
2
原创 Android平台HWASan使用介绍
Hardware Address Sanitizer (HWASan)是应在开发期间使用的内存 bug 检测工具。对于 arm64,建议使用 HWASan;对于 32 位 arm 和非 Arm 平台,建议使用 ASan。两者提供的功能相同,并且都应当用于检测用户空间代码中的内存安全 bug。
2023-08-05 11:15:11
4372
2
原创 Android super.img的解包和重新组包
Android10开始使用动态分区,system、vendor、 odm等都包含在super.img里面,可以按如下方式对super.img进行解包和组包。
2023-06-06 17:27:05
10739
4
原创 Rockchip Android13平台提取kernel环境编译KO
当需要给第三方提供kernel的ko编译环境时,又不想提供完整的kernel源码,则可以对kernel进行裁剪提取出最小的编译环境和编译器提供给第三方即可。
2023-03-17 20:46:08
5690
3
原创 教你如何实时获取Rockchip SDK的补丁发布信息
Rockchip的redmine系统上线了功能,可以通过订阅来实时获取Rockchip的补丁发布信息,及时更新重要的补丁。当成功订阅后可以通过在Rockchip redmine系统上面登记的邮箱接收到补丁发布的邮件。下面介绍如何订阅信息。
2022-12-16 21:34:38
16546
9
原创 Rockchip平台DDR带宽统计工具使用介绍
rk-msch-probe-for-user是官方提供的用于统计和监控系统DDR的负载和带宽使用情况的工具,可以实时显示当前DDR的负载和带宽信息。
2022-12-10 11:28:52
6122
2
原创 Android不带电池设备文件系统配置
文件缓存是一项重要的性能改进,在大多数情况下,读缓存在绝大多数情况下是有益无害的(程序可以直接从RAM中读取数据)。写缓存比较复杂,Linux内核将磁盘写入缓存,过段时间再异步将它们刷新到磁盘。这对加速磁盘I/O有很好的效果,但是当数据未写入磁盘时,丢失数据的可能性会增加。
2022-11-17 10:42:44
2201
1
原创 RK3588长按power键强制关机的按键时间设置
本文适用于RK3588+RK806(电源管理芯片)的方案,power(电源)键是直接控制RK806来控制RK3588的上下电,可以实现短按开机、长按强制断电关机的功能,可以通过控制RK806的寄存器来设置长按的时间长短。
2022-11-14 20:19:55
4887
原创 RK3588 CPU性能优化
目前的采用时间可以设置为32ms和8ms,在8ms的情况下cpu的负载变频和大小核调度会更及时,但是同时功耗也会对应的增加;
2022-10-24 21:58:20
5860
3
原创 Rockchip Android平台boot.img DTB ramdisk解包方法
使用unpack_bootimg 工具进行解包解包后的文件。
2022-09-28 16:40:11
4729
2
原创 Rockchip RK3588 kernel dts解析之系统休眠配置rockchip_suspend
带有 trust 的 SoC 平台,系统待机(system suspend)的工作都在 trust 中完成。因为各个平台的 trust 对于系统待机实现各不相同,所以系统待机流程一般会有如下操作:关闭 power domain、模块 IP、时钟、PLL、ddr 进入自刷新、系统总线切到低速时钟(24M 或 32K)、vdd_arm /vdd_log断电、配置唤醒源等。为了满足不同产品对待机模式的需求,目前都是通过 DTS 节点把相关配置在开机阶段传递给 trust。
2022-09-21 21:42:20
14026
14
原创 RK3588通过IO命令操作寄存器的方法
RK3588的寄存器可以通过芯片的TRM手册进行查询。寄存器的地址是有 Operational Base + offset组成,比如GPIO2C这组GPIO的iomux寄存器的地址是:0XFD5F8000+0X0050=0XFD5F8050。由上面的信息可以等到GPIO2C4的IOMUX的寄存器地址为:0XFD5F8000+0X0054=0XFD5F8054。查看GPIO2C4的GPIO的功能,可以在TRM中搜索gpio2c4,等到如下信息。通过IO命令读取该寄存器的值。通过IO命令写寄存器。
2022-09-21 21:09:46
11421
9
原创 Android版本candump cansend测试工具源码及bin文件
Android版本candump cansend测试工具源码及bin文件
2022-09-07 08:52:43
1869
原创 Rockchip平台cpu散热风扇随温度自动调速的配置方法
CPU的散热风扇硬件是有一个PWM来控制转速,Android的内核中有对应的驱动,只需加上对应的配置即可,下面介绍rockchip平台上面如何进行软件配置。
2022-08-08 14:58:39
6070
19
原创 kernel打印模块驱动加载时间
在文件kernel/init/main.c里面,将initcall_debug设置为true,然后编译使用dmesg | grep initcall 来查看模块加载时间,同时也可以查看系统加载了哪些模块,可以把不需要的模块删掉
2022-08-06 17:50:27
1844
原创 Rockchip RK3588 SD卡启动
RK3588 内部都有集成一个 BOOTROM,系统上电时先会运行 BOOTROM 代码,然后 BOOTROM 代码会探测外设存储器并加载 Loader 代码。RK3588的bootrom支持从如下接口启动系统SPI NOReMMCSD CARD因为SD card是最后探测的,所以在SD card启动的时候eEMMC或者SPI NOR中不能有固件Android在device下面的配置PRODUCT_BOOT_DEVICE,增加sdmmc的节点fe2c0000.mmc,不同芯片平台这个节点不一样,可
2022-07-06 22:33:23
7124
5
原创 Rockchip RK3588 Android12 exfat格式支持
Rockchip RK3588 Android12 exfat格式支持下载exfatprogs源码到external下面github上下载开源的exfatprogs到external目录下如果无法通过git下载可以直接打开链接下载压缩包,然后解压到external目录下exfatprogs-master.zip...
2022-07-05 18:09:31
3135
10
原创 Rockchip Android修改uboot分区大小的方法
本文适用于Rockchip平台RK3566/RK3568/RK3588RK3566/RK3568/RK3588的uboot固件格式是FIT格式由SPL负责引导。U-Boot mainline支持的一种灵活性极高的固件格式。U-Boot、trust以及mcu等固件一起打包为 uboot.img。uboot.img 的镜像文件的magic 为"d0 0d fe ed",用命令 可以查看固件头。通常为了应对OTA升级过程断电等可能导致固件损坏的情况,uboot.img做了多备份打包。...
2022-07-04 21:02:13
4679
7
原创 Rockchip RK3588 kernel dts解析之GPIO Pinctrl
RK3588有5个GPIO控制器,每个控制器可以控制32个IO,作为GPIO功能时,端口行为由GPIO控制器寄存器配置。
2022-06-21 20:33:57
10914
2
原创 Rockchip RK3588 kernel dts解析之regulator-fixed
regulator-fixed通常用于定义电压固定的regulator,或由某个GPIO开关控制的regulator。
2022-06-21 09:10:09
6346
2
原创 Rockchip Android平台内存优化及系统裁剪
Android内存优化、系统裁剪,RK356X平台通过裁剪优化开机时间可以减少8秒左右
2022-06-18 15:39:58
11394
1
原创 Rockchip RK3588 kernel dts解析之Camera
RK3588 Camera资源介绍,基于RK3588开发板的6路camera的DTS配置介绍
2022-06-17 10:05:05
15112
22
原创 rockchip Android平台动态替换开机logo的实现
Rockchip Android SDK的支持增加logo分区来动态更新开机logo,支持这个功能的uboot需要是next-dev分支的。本文的实现适用于Rockchip的Android10及以上版本的SDK
2022-06-09 22:38:47
4762
17
原创 Rockchip RK3399平台EMMC驱动能力修改方法
RK3399 EMMC的驱动能力可以通过如下代码修改:上面代码中的可以根据实际需求改为下面的其他阻抗值:驱动阻抗越小驱动能力越大
2022-06-09 15:01:01
2018
原创 RK3588 VOP-SPLIT分屏模式介绍
VOP的vop-split功能,是一种类似 mipi 双通道模式的技术,可以让一路 Video Port 输出按照水平方向平分成左右两路,同时驱动两个显示接口,显示时序相同,内容独立的画面。RK3588的Video Port0、Video Port 1、Video Port 2三个port都可以支持split功能,Video Port3不支持split功能
2022-06-01 22:33:35
6360
9
原创 Rockchip 平台通过命令控制gpio的方法
Rockchip 平台通过命令控制gpio的方法Rockchip平台的GPIO通常有5组:GPIO0-GPIO4(不同的芯片会不一样),每组有32个GPIO。每组GPIO又分为A/B/C/D4个小组,每个小组8个GPIO。所以GPIO的命可以从:GPIO0A0到GPIO4D8。在开发调试的时候可以通过命令行直接操作GPIO输出高低电平,具体操作命令如下:以GPIO2C4 为例说明:GPIO2C4 转换成具体的GPIO值:232+82+4=84生成节点/sys/class/gpio/gp
2022-05-27 21:50:01
2660
Android版本can测试程序candump、cansend源码
2022-09-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人