OneSea
8年Android/Linux系统开发经验,专注Display&Graphics领域。
展开
-
Android-4.0.3_r1 Dropbox
本文重点分析Dropbox的应用和底层实现。原创 2022-05-10 15:11:09 · 238 阅读 · 0 评论 -
Android-4.0.3_r1内置ApiDemos.apk
ApiDemoes.apk对于预览APIs效果和学习其用法有很大的帮助,但它默认是没有被编译的,虽然可以手动模块编译然后手动安装到系统,但每次都这样操作未免过于麻烦,因此本文介绍如何将其配置为默认编译并安装到系统,以便于后续使用。原创 2022-05-05 09:24:09 · 460 阅读 · 0 评论 -
Android-4.0.3_r1 HWUI
本文重点分析HardwareRenderer的实现和应用。原创 2022-05-03 12:04:31 · 820 阅读 · 0 评论 -
Android-4.0.3_r1 SurfaceTextureClient
参考资料[1]分析ANativeWindow的子类FramebufferNativeWindow,本文继续分析其另一个子类SurfaceTextureClient。原创 2022-05-01 13:23:36 · 396 阅读 · 0 评论 -
iTOP4412|Android-4.0.3_r1 GLES案例分析 —— gl_basic
参考资料[4]分析了Android-Q的gl_basic,其实Android-4.0.3_r1就有该案例,绘制效果是一样的,但具体实现细节有所不同:前者在普通Surface(依赖SurfaceFlinger)上绘图,后者在FramebufferNativeWindow上绘图(不依赖SurfaceFlinger)。...原创 2022-05-01 13:16:50 · 747 阅读 · 0 评论 -
iTOP4412|Android-4.0.3_r1 GraphicBuffer
由《iTOP4412|Android-4.0.3_r1 Gralloc》第2.1小节可知,GraphicBuffer其实是对Gralloc的封装,本文对其进一步分析。原创 2022-04-23 21:00:18 · 1290 阅读 · 0 评论 -
iTOP4412|Android4.0.3_r1 GLES&EGL
Android中常用到的3D图形库为OpenGL,它有硬件和软件两种实现,其中后者是开源的,本文对常用的API实现进行分析,以加深对OpenGL底层实现的理解。原创 2022-04-23 21:14:57 · 1121 阅读 · 1 评论 -
iTOP4412|Android-5.1.1_r9 Gralloc
《iTOP4412 Gralloc(4.4.4_r1)》分析了4.4.4_r1版本的Gralloc实现和使用i情况,本文继续基于android-5.1.1_r9进行分析。原创 2022-04-21 21:20:47 · 303 阅读 · 0 评论 -
iTOP4412|Android-4.0.3_r1 Gralloc
Gralloc模块主要用于图形相关内存的管理,与其关联的设备有alloc_device_t和framebuffer_device_t,可分别用于内存的申请/释放和图像绘制,本文基于android-4.0.3_r1对其实现和应用进行分析。原创 2022-04-21 21:17:42 · 2701 阅读 · 0 评论 -
iTOP4412|Android-5.1.1_r9 HWC
0 前言参考资料原创 2022-04-21 19:36:47 · 382 阅读 · 0 评论 -
iTOP4412|Android-5.1.1_r9 SurfaceFlinger
iTOP4412提供了android-5.1.1_r9的移植支持,本文对其SurfaceFlinger的实现进行重点分析。原创 2022-04-21 10:46:55 · 307 阅读 · 0 评论 -
iTOP4412|Android-4.4.4_r1 SurfaceFlinger
由《iTOP4412 SurfaceFlinger(4.0.3_r1)》可知,android-4.0.3_r1是没有VSYNC机制的,主要通过Thread来循环等待INVALIDATE事件进行合成,那么android-4.4.4_r1情况又如何呢?本文对此进行重点分析。原创 2022-04-18 08:39:34 · 264 阅读 · 0 评论 -
iTOP4412|Android-4.0.3_r1 SurfaceFlinger
由《iTOP4412 VSYNC(4.0.3_r1)》可知,android-4.0.3_r1尚未支持VSYNC,那么其图像合成是由什么信号触发的呢?本文对此进行深入分析。原创 2022-04-18 08:36:41 · 466 阅读 · 0 评论 -
iTOP4412|Android-4.4.4_r1 VSYNC
《iTOP4412|Android-4.0.3_r1 VSYNC》尚未实现VSYNC机制,而android-4.4.4_r1则已经包含了VSYNC的支持,因此本文对其进行分析。原创 2022-04-17 20:43:47 · 269 阅读 · 0 评论 -
iTOP4412|Android-4.0.3_r1 VSYNC
本文主要分析iTOP4412官方android-4.0.3_r1源码的VSYNC支持情况。原创 2022-04-17 18:20:41 · 398 阅读 · 0 评论 -
iTOP4412|Android-4.4.4_r1 HWC-1.1
《iTOP4412|Android-4.0.3_r1 HWC-1.0》分析了android-4.0.3_r1版本的HWC,4.4.4_r1虽然变化不大,但这些细微的差异可能会对读者造成不必要的困惑,因此本文决定针对4.4.4_r1在分析一下其中的差异。原创 2022-04-17 15:52:54 · 703 阅读 · 0 评论 -
iTOP4412|Android-4.4.4_r1 HDMI显示
《iTOP4412 HDMI显示(4.0.3_r1)》已对iTOP4412的原理、驱动、HWC(本文HWC源码路径改为hardware/samsung_slsi/exynos4)进行分析,因此本文均不再赘述,而是重点分析其显示设置各项功能的实现。原创 2022-04-11 23:42:56 · 1045 阅读 · 0 评论 -
iTOP4412|Android-4.0.3_r1 HWC-1.0
本文重点分析iTOP4412 HWC的实现。原创 2022-04-11 22:58:28 · 946 阅读 · 2 评论 -
Tiny4412 LCD背光驱动(WLED)
Tiny4412可和多个型号的LCD进行搭配使用,我购买的LCD型号是7寸的S702,其内部封装了INNOLUX的AT070TN92模组,该模组背光由2路WLED实现,S702采用WLED Driver RT9293进行背光供电,并将背光的控制由单片机封装为1-wire的形式。Tiny4412通过GPX1_2引脚来和S702进行1-wire通信,然而GPX1_2是一个普通的GPIO,并未原生支持1-wire协议,需要通过软件来模拟,因此LCD背光驱动很大一部分其实是1-wire协议的模拟实现。...原创 2021-04-29 01:17:55 · 882 阅读 · 0 评论 -
Tiny4412 HDMI显示
《[Exynos4412][iTOP4412]HDMI显示》分析了iTOP4412的HDMI原理和驱动,为了便于对比,本文继续分析Tiny4412的HDMI原理和驱动。原创 2022-04-06 22:01:41 · 395 阅读 · 0 评论 -
Tiny4412 LCD驱动(DRM+无设备树)
Linux显示框架主要有FB和DRM两种,Tiny4412官方提供的linux-3.5.0默认使用前者(详见《Tiny4412 LCD驱动(FB)》)。DRM显示框架已成为主流,本文重点分析如何将官方提供的linux-3.5.0改用DRM框架。原创 2016-09-09 09:43:22 · 4943 阅读 · 1 评论 -
iTOP4412 LCD背光驱动(PWM)
不同于《Tiny4412 LCD背光驱动(WLED)》,iTOP4412的LCD背光亮度通过PWM来调节,本文基于linux-3.0.15分析iTOP4412塑胶壳7寸LCD的背光驱动。原创 2022-02-08 16:58:12 · 2331 阅读 · 0 评论 -
iTOP4412|Android-4.0.3_r1 HDMI显示
《[Exynos4412][iTOP4412]LCD驱动(FB)》已经分析了LCD驱动,本文继续分析iTOP4412 HDMI显示的实现和效果。原创 2022-02-08 10:56:11 · 1681 阅读 · 0 评论 -
iTOP4412|Android-4.0.3_r1 内核反复重启
iTOP4412开发板使用过程遇到反复重启的情况,本文主要介绍该问题的分析过程和解决方法。原创 2022-02-07 11:09:15 · 1396 阅读 · 0 评论 -
iTOP4412|Android-4.0.3_r1 无法显示开机动画
根据开发板说明编译出来的内核,无法进入开机动画界面,本文介绍具体分析过程和最终解决方法。原创 2022-02-06 20:06:10 · 606 阅读 · 0 评论 -
iTOP4412|Android-4.0.3_r1添加产品选项
iTOP4412官方提供的开发Android-4.0.3源码没有显示相关产品选项,因此本文研究如何将其补充完善。原创 2022-02-06 18:46:47 · 678 阅读 · 0 评论 -
iTOP4412 LCD驱动(FB)
我购买的LCD的接口是LVDS的,然而Exynos4412并不支持LVDS接口,因此iTOP4412需要通过转接芯片实现RGB到LVDS信号的转换,本文重点分析相关硬件电路和软件驱动,内核版本为linux-3.0.15。原创 2022-01-16 13:31:06 · 2048 阅读 · 0 评论 -
iTOP4412移植Android-6.0.1_r3
开发板官方提供的Android版本比较老旧了,本文尝试将其升级到更新的版本。原创 2022-01-16 13:24:43 · 1881 阅读 · 0 评论 -
Tiny4412 Linux Logo
内核本身支持开机logo,本文基于Tiny4412开发板对其进行说明,所用内核版本为linux-3.1.0,显示框架为FB。原创 2016-08-26 16:49:19 · 1368 阅读 · 0 评论 -
iTOP4412移植Android-5.1.1_r38
iTOP4412官方提供了5.1.1版本的移植教程[1][2],但只告诉我们所然,并没讲明所以然,因此本文将对该移植过程进行分析。原创 2021-05-13 22:55:26 · 490 阅读 · 0 评论 -
Tiny4412|U-Boot移植
0 前言 本文介绍如何移植最新U-Boot源码使其支持Tiny4412开发板。1 正文 待更新。。。参考资料原创 2021-05-11 21:32:09 · 420 阅读 · 0 评论 -
Tiny4412内核移植
本文介绍如何从零开始构一个可运行于Tiny4412的Linux系统,若不想了解具体过程,可直接下载镜像使用。原创 2016-08-29 19:50:34 · 2094 阅读 · 1 评论 -
Tiny4412 SD卡启动内核与文件系统
曾经使用创龙TL138进行Linux应用开发,记得那时候不管是UBoot、Linux内核镜像还是根文件系统,都可以直接烧写到SD卡中,然后从SD启动即可,更换内核和文件系统都非常方便。然而,友善之臂的Tiny4412的使用手册只是给出了如何借助SD卡来烧写系统到eMMC中,然后再从eMMC中启动,这样子未免不太方便,因此我想将创龙TL138的SD卡启动方式应用到Tiny4412中。原创 2016-09-04 17:40:53 · 5123 阅读 · 3 评论