
framework
文章平均质量分 71
maze.ma
向wuxiaowen学习!!!
向何小龙学习!!!
展开
-
memory:DMA-BUF cache handling: Off the DMA API map (part 1/2)
最近,DMA-BUF堆接口已添加到5.6内核。此API接口类似于ION,Android供应商已使用ION多年。但是,在尝试供应商转移使用DMA-BUF堆的过程中,我们已经开始了解DMA API模型如何不适合现代移动设备。此外,由于缺乏关于如何有效处理缓存操作的明确指导,导致供应商使用定制的特定于设备的优化,而这些优化对于上游解决方案而言不够通用。本文将描述问题的性质。接下来的第二期将探讨解决方案。内核的DMA api都是为CPU和设备之间的内存共享而提供的。近年来,传统的DMA API加入了ION、DM翻译 2021-02-25 14:21:42 · 711 阅读 · 2 评论 -
display: Scheduling for the Android display pipeline-2020
显示由Android显示管道管理,Android显示管道是一个复杂的系统,其中不同的任务和硬件加速器在应用程序的执行以及通过屏幕呈现给用户的图形内容的更新方面进行协作。显示管道负责生成显示输出,因此其性能表现直接影响用户与设备之间最重要的交互渠道之一。除了不断增长的移动游戏行业所要求的低延迟要求外,在显示管线中优先考虑的是提供稳定的帧速率(不跳过任何帧)。此外,Android在移动设备中处于领先地位,其中有限的电量消耗和散热代表了系统必须满足的其他严格要求;这些可以概括为使功耗最小化。所有这些需求是相互翻译 2021-02-22 11:17:33 · 713 阅读 · 0 评论 -
ION基本概念介绍和原理分析[转]
转载前的话:ION将内核态形形色色的内存分配纳入统一的管理接口之中,更重要的设计意图是为内存在不同用户态进程之间传递和访问提供了支持。每个ion_buffer与一个struct file关联,其handle纳入进程file desc空间而不是/dev/ion设备内单独的handle空间,方便之处如下:每个buffer一个handle,便于更灵活地细粒度地控制每个buffer的使用周期;...转载 2020-04-23 18:16:17 · 3520 阅读 · 0 评论 -
tools:Autotool参数传递
1.判断某个文件是否存在,若不存在,想办法告知对应的源码[configure.ac;Makefile.am;source.c]a.configure.ac传递给Makefile.amdiff --git a/configure.ac b/configure.acindex aaaaa..bbbbb 100644--- a/configure.ac+++ b/configure...原创 2020-03-24 11:06:36 · 383 阅读 · 0 评论 -
display:YUV各种格式所占字节数
YUV与RGB大致的转换方式R=Y+1.140*VG=Y-0.395*U-0.581*VB=Y+2.032*UY=+0.299*R+0.587*G+0.114*BU=-0.147*R-0.289*G+0.436*BV=+0.615*R-0.515*G-0.100*BYUV is a class of pixel formats used in video applicat...转载 2019-09-23 21:22:46 · 2960 阅读 · 1 评论 -
tools:drm-kms调试手段[modetest]
工具:modetest工具路径:libdrm/tests/环境:Qcom使用方法:usage: ./modetest [-cDdefMPpsCvwa] Query options: -c list connectors -e list encoders -f list framebuffers -p list CRTCs and planes (pipes) T...原创 2019-12-12 16:06:48 · 12428 阅读 · 14 评论 -
display:rk3288随笔
http://www.t-firefly.com/doc/download/page/id/4.html安装:RK驱动助手 安装:windows固件升级工具 下载:Ubuntu系统 下载:linux-sdk gpt源码包根据wiki设置rk3288进去maskrom 升级为ubuntu[选中固件,擦除flash,升级固件]...原创 2020-03-14 18:42:26 · 1182 阅读 · 0 评论 -
Wayland与Weston简介
简单地说,Wayland是一套display server(Wayland compositor)与client间的通信协议,而Weston是Wayland compositor的参考实现。其官网为http://wayland.freedesktop.org/。它们定位于在Linux上替换X图形系统。X图形系统经历了30年左右的发展,其设计在今天看来已略显陈旧。在X系统中,X Server作为中心...转载 2019-10-08 11:23:28 · 1179 阅读 · 0 评论 -
kernel:Segmentation fault
Display::Prepare(struct output *output)+ output->secure_status = false;+ if(output->next->bo)+ {+ gbm_perform(GBM_PERFORM_GET_SECURE_BUFFER_STATUS, output->next->bo...原创 2019-12-04 17:10:38 · 470 阅读 · 0 评论 -
display:weston初始化
平台:Qcomweston version: 5.0.0Weston initialization总体上来说,weston初始化分为一下几个阶段Create wl_displayLoad backed modulesCreate compositorBackend initializationCreate listen socket...原创 2019-11-21 16:28:29 · 3039 阅读 · 0 评论 -
android:hal层调用/sys接口逻辑
本文是个小的演示,如何对kernel暴露的接口进行实际操作#define BL_VALUE "/sys/class/leds/lcd-backlight"#define BL_DEV_STATUS "/sys/class/leds/lcd-backlight/brightness_state"#define BL_DEV BL_VALUE#define BL_MAX_BRIGH...原创 2019-01-24 11:19:44 · 1014 阅读 · 2 评论 -
android:按键唤醒kernel系统-e3x0-button
源代码路径https://android.googlesource.com/kernel/msm/+/android-4.4/drivers/input/misc/e3x0-button.candroid / kernel / msm / android-4.4 / . / drivers / input / misc / e3x0-button.c/* * Copyright...原创 2017-12-12 15:00:35 · 1278 阅读 · 0 评论 -
tools:adb 命令
Android Debug Bridge version 1.0.32-a - directs adb to listen on all interfaces for a connection-d - directs command to the only connected USB...翻译 2017-11-30 16:45:47 · 1232 阅读 · 0 评论 -
Makefile.am文件的实例讲解
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.youkuaiyun.com/zmxiangde_88/article/details/8024223Makefile.am是一种比Makefile更高层次的编译规则,可以和configure.in文件一起通过调用automake命令,生成Makefile.in文件,...转载 2019-11-04 19:10:29 · 558 阅读 · 0 评论 -
tools:makefile.am/Cmake编译规则改为Android.bp&ldd&readelf&nm
三个可以查看库文件的linux下工具。man或者--help查看更多readelfnmldd关于Android.bp如何使用,查阅androidout目录下的生成doc$ROOT/out/soong/docserror example:ld.lld: error: undefined symbol:链接过程找不到对应函数定义:确定对应链接库函数是否写明。如需置为未定义函...原创 2019-11-01 10:33:25 · 1608 阅读 · 0 评论 -
display:weston渲染流程:buffer+attach+damage+frame
1.attach将wl_buffer设置为pending wl_buffer而不是currect。2.commit将pending wl_buffer设置为currect surface的buffer。3.surface的大小由buffer决定。wl_surface.attach assigns the given wl_buffer as the pending wl_buffer....原创 2019-09-10 15:24:20 · 7043 阅读 · 3 评论 -
图文详解YUV420数据格式
YUV格式有两大类:planar和packed。对于planar的YUV格式,先连续存储所有像素点的Y,紧接着存储所有像素点的U,随后是所有像素点的V。对于packed的YUV格式,每个像素点的Y,U,V是连续交错存储的。YUV,分为三个分量,“Y”表示明亮度(Luminance或Luma),也就是灰度值;而“U”和“V” 表示的则是色度(Chrominance或Chroma),作用是描...转载 2019-07-25 20:17:58 · 940 阅读 · 0 评论 -
wayland protocal and programming
Written in 2012 before wayland 1.0 released, most of them are outdated as in May 2017.wayland是异步的面向对象的协议,所有请求都是在某个对象上的方法调用。每个对象实现一个接口,描述一系列操作。请求包含对象id,唯一标识服务器上的一个对象,还包括opcode,指出在对象上调用的方法。server向clie...转载 2019-07-24 15:54:52 · 4529 阅读 · 1 评论 -
WayLand IVI Extension
Diagram has one semantic issue: the ivi-controller.xml removed and we have ivi-wm.xml instead the ivi-controller.so is still there [图片中的ivi-controller.xml已经被替换为ivi-wm.xml]Component Diagram完整的组...转载 2019-07-11 18:39:37 · 3523 阅读 · 0 评论 -
wayland case
原文地址:http://blog.youkuaiyun.com/jinzhuojun/article/details/40264449Wayland协议主要提供了Client端应用与Server端Compositor的通信机制,Weston是Server端Compositor的一个参考实现。Wayland协议中最基础的是提供了一种面向对象的跨进程过程调用的功能,在作用上类似于Android中的Binde...转载 2019-07-05 15:36:30 · 732 阅读 · 0 评论 -
android:在AndroidO下将selinux设置为permissive
ps:运行时的操作就是命令行下的,最简单,重启失效$getenforce$setenforce 0'修改测略': log:01-01 00:00:20.828 3665 3665 W sh : type=1400 audit(0.0:12): avc: denied { write } for name="core_pattern" ...原创 2018-09-10 10:20:46 · 9034 阅读 · 0 评论 -
Android.bp语法注释
关于Android.bp如何使用,查阅androidout目录下的生成doc$ROOT/out/soong/docshttps://android.googlesource.com/platform/build/soong/+/HEAD/docs/best_practices.mdandroidmk工具:把android.mk转换为android.bp源码在:build/soo...原创 2018-07-13 14:19:08 · 12640 阅读 · 0 评论 -
安卓 build/core/Makefile 以及main.mk
android make 系统总共分为四层arch board device product在各个字android.mk文件中引用的定义都存放在./build/core/下!比如android.mk中的include (CLEARVARS)它对应的是在./build/core/config.mk中的CLEARVARS:=(BUILD_SYSTEM)/clear_vars....转载 2018-06-17 09:49:32 · 2067 阅读 · 0 评论 -
android:service不停重启无法关闭
[ 501.470952] init: property_set("ro.boottime.ril-daemon", "501363645125") failed: property already set[ 501.536261] init: Service 'ril-daemon' (pid 7422) killed by signal 1[ 501.542643] init: Se...原创 2018-06-12 13:28:11 · 7183 阅读 · 3 评论 -
Android init.rc中各条命令开机过程中执行顺序
1. 所有的action运行于service之前2. 下面为各个section的执行顺序,英文编号的section是系统内建的(写死在init.c中的命令)1) early-init a) wait_for_coldboot_done b) property_init c) keychord_int d) console_init e) ...转载 2018-04-10 11:25:15 · 1628 阅读 · 0 评论 -
android:m,mm,mmm区别
Android源码目录下的build/envsetup.sh文件,描述编译的命令m: Makes from the top of the tree. mm: Builds all of the modules in the current directory. mmm: Builds all of the modules in the supplied directories.要想使用这...转载 2018-02-22 10:05:11 · 666 阅读 · 0 评论 -
tools:dropbear添加新的密钥交换协议
源码地址https://github.com/barryk/android_external_dropbear【这个版本只到0.52,而0.52只支持一种密钥交换协议diffie-hellman-group-sha1】本文实现:添加diffie-hellman-group14-sha1修改的源文件包括sysoptions.h /* various algorithm id...原创 2017-12-05 10:46:36 · 2563 阅读 · 0 评论 -
android:init.rc里面的服务老是重启
service 不断的重启失败。不停的重启。<5>[ 31.154227] init: starting 'xxxx'<6>[ 31.163313] init: waitpid returned pid 2651, status = 00000100<5>[ 31.163343] init: process 'xxxx', pid 2651 ...原创 2017-11-30 23:28:02 · 3854 阅读 · 0 评论 -
android:ssh移植
关于openssh的源码可以参看googlesource:https://android.googlesource.com/LOCAL_PATH:= $(call my-dir)###################### libssh ######################include $(CLEAR_VARS)LOCAL_MODULE_TAGS := eng...原创 2017-11-16 14:57:45 · 3852 阅读 · 0 评论 -
android:安卓4.2+A20
目前板子支持的模块以及配置信息 LCD:IC=st7789v。竖屏显示(240*320),lvds转RGB TP:IC=FT6336G。竖屏240*320,双指触摸 UART:ttys567。波特率为921.6kbps WIFI:IC=AP6255。支持2.4G以及5Gwifi 支持立体声音频输...原创 2017-11-15 15:38:54 · 1187 阅读 · 0 评论 -
android:替换开机动画
引言 (该部分转载): 开机动画的地址:system\media\bootanimation.zip,要修改开机动画就是修改bootanimation这个文件。如果说你的手机里没有这个文件,那就是说明你用的是官方原始版本的rom,开机动画没有被修改过,但这不碍事,没有就放一个进去,到时候想换回最原始的开机画面,也可以把bootanimation这个文件删了。官方最原始的开机动画在...原创 2017-11-08 16:43:34 · 5040 阅读 · 0 评论 -
android:静默安装 root提权方式
实现方式1.己方应用拿到root私有权限1.1 su源代码修改:su.c// if (myuid != AID_ROOT && myuid != AID_SHELL) {// fprintf(stderr,"su: uid %d not allowed to su\n", myuid);// return 1;// }干...原创 2017-08-22 19:46:24 · 3422 阅读 · 0 评论 -
高通camera结构(摄像头基础介绍)
转载https://www.cnblogs.com/whw19818/p/5853407.html 摄像头基础介绍 一、摄像头结构和工作原理. 拍摄景物通过镜头,将生成的光学图像投射到传感器上,然后光学图像被转换成电信号,电信号再经过模数转换变为数字信号,数字信号经过DSP加工处理,再被送到电脑中进行处理,最终转换成手机屏幕上能够看...转载 2019-02-15 22:55:31 · 2330 阅读 · 0 评论 -
Poll 机制的简单分析
参考:韦东山老师视频教程用户空间应用程序向设备驱动请求数据时,一般有以下几种方式:1.不断查询,条件不满足的情况下就是死循环,这种情况下非常耗费CPU。2.休眠唤醒的方式,如果条件不满足,应用程序则一直休眠下去。3.poll机制,如果条件不满足,休眠指定时间,休眠时间内条件满足唤醒进程,条件一直不满足,达到指定时间,则自动唤醒。4,异步通知,应用程序注册信号处理函数,驱动程序发...转载 2019-02-13 11:07:03 · 747 阅读 · 0 评论 -
tools:dropbear移植到Android
dropbear的安装与使用android4.4之后就没有dropbear了。github上还是有的。源码地址:https://github.com/barryk/android_external_dropbear【这个版本只到0.52,而0.52只支持一种密钥交换协议diffie-hellman-group-sha1后续我会写如何添加其他密钥交换协议】 添加密钥交换协议链接:h...原创 2019-05-15 14:52:37 · 1369 阅读 · 0 评论 -
display:Wayland Architecture
Wayland ArchitectureA good way to understand the wayland architecture and how it is different from X is to follow an event from the input device to the point where the change it affects appears on s...翻译 2019-07-04 10:51:53 · 2587 阅读 · 0 评论 -
wayland详解
简单地说,Wayland是一套display server(Wayland compositor)与client间的通信协议,而Weston是Wayland compositor的参考实现。其官网为http://wayland.freedesktop.org/。它们定位于在Linux上替换X图形系统。X图形系统经历了30年左右的发展,其设计在今天看来已略显陈旧。在X系统中,X Server作为中心...转载 2019-07-05 12:49:18 · 22180 阅读 · 3 评论 -
android:Android网关协议
netstate -rn以及route -n 显示的route协议都是优先级相对低的协议。容易造成误导实际上的网关协议是要通过ip命令查询的。如果发现route命令下的网关协议是正确的。但是确无法正常的把数据包发出去或者接收。你就需要通过ip命令去确认协议是否正确。'ip命令': ip rule list...原创 2018-09-10 10:27:55 · 1469 阅读 · 0 评论