- 博客(122)
- 资源 (1)
- 收藏
- 关注
原创 5camear调试
一:基础知识1,Image Sensor类型 a) YUV Sensor YUV Sensor输出的Data格式为YUV,图像的效果处理使用Sensor内部的ISP, BB端接收YUV格式的data后只进行格式的转换,效果方面不进行处理,由于Sensor内部的ISP处理能力有限, 且YUV Sensor的数据量比较大(YUV422的格式...
2019-02-22 17:02:02
1490
原创 4keypad调试
一:基础知识 硬件原理 NORMAL_TYPE Row0--Row7 KCOL0--KCOL7 EXTEND_TYPE Row0--Row3 KCOL0 KCOL0_R KCOL1 KCOL1_R KCOL2-KCOL2_R 读建方式 1.ker...
2019-02-22 17:01:21
1094
原创 3TP调试
一:基础知识 Kernel 通过input 子系统与Android交互,每当我们点击屏幕或抬起都会产生中断, 每当kernel收到中断会通过i2c总线读取TP控制器产生的坐标数据,kernel就会通过input系统上报给android层, android层会完成相应的动作。 1. 硬件管脚: SCL0: IIC 时钟引脚 SDA0:IIC数据...
2019-02-22 17:00:25
1312
原创 2:LCM调试
lcd 显示相关的文件 ,这些后面分析 ,先怎么添加一个新的LCD驱动./kernel-3.18/drivers/misc/mediatek/video/mt6735/videox/primary_display.c./kernel-3.18/drivers/misc/mediatek/video/mt6735/videox/disp_lcm.c./kernel-3.18/drivers/...
2019-01-24 15:02:25
3688
翻译 1:MTK 6737 Flash配置
一:MTK 平台查看eMMC和DDR的工作频率 eMMC: adb shell cat /sys/kernel/debug/mmc0/clock DDR: adb shell cat /sys/bus/platform/drivers/emi_clk_test/read_dram_data_rate1. 获取 flash id: cat /sys/b...
2019-01-22 11:43:53
2690
1
原创 android文件系统挂载分析
参考 https://www.cnblogs.com/xiaolei-kaiyuan/p/5501104.html我们知道android有很多分区,如"system","userdata","cache",他们是何时挂载的?如何挂载的?这个系列的文章进行分析。这里介绍第一部分,android手机正常开机各分区的挂载。这里我们以mtk平台进行分析,高通与mtk差别不是很大。我们知道kern...
2018-09-20 16:03:12
3211
原创 MTK android-partition分析
android的存储分为两种 一种叫做RAM,如emmc标准的ddr2/3/4,容量比较小 一种叫做ROM,rom大小比较大,如8G/16G/32G/64G/128G。我们给手机刷机,是把system.img/recovery.img/userdata.img等按照分区表烧写在对应地址的ROM上,这部分叫系统部分,如16G的手机,开机后只有11G,其中5G被这些分区占据了,用户能使...
2018-09-20 15:20:51
3222
2
原创 android 的Binder
./frameworks/native/libs/binder/ProcessState.cpp./frameworks/native/include/binder/ProcessState.h./frameworks/av/media/mediaserver/main_mediaserver.cppint main(int argc __unused, char** argv){...
2018-09-11 10:18:09
254
原创 C++的类的初始化问题
ProcessState::ProcessState() //继承并初始化 : mDriverFD(open_driver())----->Android很多代码都是这么写的,稍不留神就没看见这里调用了一个很重要的函数 , mVMStart(MAP_FAILED)//映射内存的起始地址 , mManagesContexts(false) , mBin...
2018-09-10 11:06:32
1813
原创 MTK MT6580 clock buffer XO_NFC_TP3输出控制方法
在开启的时候NFC有26M输出关则无输出源码如下./kernel-3.10/drivers/misc/mediatek/nfc/mt6580/mt6605.cstatic long mt6605_dev_unlocked_ioctl(struct file *filp, unsigned int cmd, unsigned long arg) ... cas...
2018-08-31 15:26:17
1420
原创 MTK6580电源使用(regulator)
关于MTK6580电源使用相关的API struct regulator *__must_check regulator_get(struct device *dev,const char *id); int regulator_set_voltage(struct regulator *regulator, int min_uV, int max_uV); int __...
2018-08-30 17:31:04
1401
原创 一个简单的SystemService(vibrator)
Android 6.01:应用怎么使用vibrator Vibrator mVibrator = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE); //获取Vibrator实例 mVibrator.vibrate(500); frameworks/base/core/java/android/app/Sy...
2018-08-16 12:01:42
1985
原创 MTK 6735Gsensor数据采样(第一次用app采样)
1、addView <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layou...
2018-08-14 19:27:52
702
原创 MTK LIGHT分析
以MTK 6737源代码分析:软件架构: APP/system | | Binder | java framework | |JNI | Native Framework ...
2018-08-03 11:59:07
582
转载 关于printk可变参数
在GNU C中,宏可以接受可变数目的参数,就象函数一样,例如: #define pr_debug(fmt,arg...) printk(KERN_DEBUG fmt, ##arg)用可变参数宏(variadic macros)传递可变参数表 你可能很熟悉在函数中使用可变参数表,如: void printf(const char* format, ...);
2017-07-18 18:22:10
1788
转载 IMX6 驱动代码位置
http://blog.youkuaiyun.com/jack_a8/article/details/43340197emmc/sdcard 驱动 drivers/mmc/host:sdhci-esdhc-imx.c /dev/mmcblk* sdhci.c
2016-07-15 15:48:06
913
转载 Pm命令用法
Pm命令用法http://gityuan.com/2015/10/31/binder-prepare/一、Pm命令命令格式:pm command>命令列表:命令功能实现方法list packages列举app包信息PMS.getInstalledPackagesinstall [options]
2016-04-20 14:22:25
3400
转载 Pm命令用法
一、Pm命令命令格式:pm command>命令列表:命令功能实现方法list packages列举app包信息PMS.getInstalledPackagesinstall [options] >安装应用PMS.installPackageAsUseruninstall [options
2016-04-20 14:14:26
1324
转载 Am命令用法
一、概述作为一名开发者,相信对adb指令一定不会陌生。那么在手机连接adb后,可通过am命令做很多操作:(1) 拨打电话10086adb shell am start -a android.intent.action.CALL -d tel:10086(2) 打开网站www.gityuan.comadb shell am start -a android.inte
2016-04-20 14:13:22
1521
转载 Android内存分析命令
一、概述1.1 内存指标概念Item全称含义等价USSUnique Set Size物理内存进程独占的内存PSSProportional Set Size物理内存PSS= USS+ 按比例包含共享库RSSResident Set Size物理内存RSS= USS+ 包含共享库
2016-04-20 13:50:29
2919
转载 IMX6 理解Android编译命令
一、引言关于Android Build系统,这个话题很早就打算整理下,迟迟没有下笔,决定跟大家分享下。先看下面几条指令,相信编译过Android源码的人都再熟悉不过的source build/envsetup.shlunchmake -j20这3个就可以编译IMX android二、编译命令准备好编译环境后,编译Android源码的第一步是 source bui
2016-04-20 11:54:58
2128
转载 Minicom 使用初步
因为现在电脑基本不配备串行接口,所以,usb转串口成为硬件调试时的必然选择。目前知道的,PL2303的驱动是有的,在dev下的名称是ttyUSB#。minicom,tkterm都是linux下应用比较广泛的串口软件,这里简单介绍minicom使用。一,安装sudo apt-get install minicom二,配置安装完成后,请不要着急打开软件。需先进行配置。具体步
2016-04-13 14:24:27
2461
转载 Android Init进程源码分析
http://blog.youkuaiyun.com/yangwen123/article/details/9029959
2016-01-06 16:22:58
425
转载 U-boot中常用参数设定及常用宏的解释和说明
uboot功能很强,支持各种各样的启动方式,如:U盘启动,NFS启动,NAND Flash启动,NOR Flash启动……1、环境变量的存储设置 如u-boot中的savenv命令,它用来保存系统的环境变量到Flash中,当我们在开发板的配置文件中,使用的宏定义为:[cpp] view plaincopy#define CONFIG_ENV_IS_IN_FLAS
2015-12-24 10:02:40
1456
原创 去掉linux光标和制作linux Logo
一、去除Llinux 的开机光标 在内核的当前目录进入到drivers/video/console/fbcon.c 文件 将static void fb_flashcursor(void *private)和 static void fbcon_cursor(struct vc_data *vc, int mode) 里的内容注释掉,使之变成空函数。二、设置Linu
2015-12-15 11:43:36
2005
1
转载 linux device tree源代码解析
http://blog.chinaunix.net/uid-27717694-id-4274992.html//Basedon Linux v3.14 source codeLinux设备树机制(Device Tree)一、描述ARM Device Tree起源于OpenFirmware (OF),在过去的Linux中,arch/arm/plat-xxx和arch/
2015-12-07 10:42:23
157
转载 Android 开发之 ---- 底层驱动开发(二)
Android 设备驱动(下) MTD 驱动 Flash 驱动通常使用 MTD (memory technology device ),内存技术设备。 MTD 的字符设备: /dev/mtdX 主设备号 90.
2015-10-29 08:34:12
156
转载 Android 开发之 ---- 底层驱动开发(一)
驱动概述 说到 android 驱动是离不开 Linux 驱动的。Android 内核采用的是 Linux2.6 内核 (最近Linux 3.3 已经包含了一些 Android 代码)。但 Android 并没有完全照搬 Linux 系统内核,除了对Linux 进行部分修正,还增加了不少内容。android 驱动 主要分两种类型:Android 专用驱动 和 Android 使用
2015-10-29 08:33:38
2003
原创 USB-OTG(on-the-go)
ID(Identification)角色辨识引脚两个USB装置互连时,要怎样让两个装置都知道:谁是主控?谁是Peripheral【外围】?这其实使用了新引脚,在传统4-pin的USB接口里追加了第五个引脚:ID要在互接种担任主控者的USB装置,则将ID引脚位接地(GND),相对的想担任受控者的USB装置则将此引脚空接(NC),若要用更具体的电器特性来说明,则接地者的ID线路电阻必须低于10
2015-10-28 15:38:14
2424
转载 为Android应用程序读取/dev下设备而提权
1.在init.rc中提权 chmod 777 /dev/ttyUSB0 init.rc文件在system/core/rootdir2.在device.c中提权限,这个比较隐蔽,不易发现device.c 在/system/core/init/device.c3.每次都在java层去提权,cmd为提权命令public void exeShell(String
2015-10-28 11:28:20
804
原创 cdev_add alloc_chrdev_region 系列函数
在Linux 2.6内核中的字符设备用cdev结构来描述,其定义如下:struct cdev { struct kobject kobj; struct module *owner; //所属模块 const struct file_operations *ops; //文件操作结构 struct list_head list; dev_t d
2015-10-24 16:03:35
1142
原创 MKDEV MAJOR MINOR
将主设备号和次设备号转换成dev_t类型可以通过MKDEV(int major, int minor);如果要从dev_t类型中取得主设备号可用如下的方法:MAJOR(dev_t dev);如果要从dev_t类型中取得次设备号可用如下的方法:MINOR(dev_t dev);从inode中获得主设备号与次设备号unsigned int imajo
2015-10-24 16:01:44
718
转载 register_chrdev_region()、alloc_chrdev_region() 和 register_chrdev()
1.字符设备结构体 内核中所有已分配的字符设备编号都记录在一个名为 chrdevs散列表里。该散列表中的每一个元素是一个 char_device_struct 结构,它的定义如下: staticstruct char_device_struct { structchar_device_struct*next; //指向散列冲突链表中的下一个元素的指针
2015-10-24 15:58:19
524
原创 ln详解
Linux中硬链接和软链接的区别和联系首先要弄清楚,在Linux系统中,内核为每一个新创建的文件分配一个Inode(索引结点),每个文件都有一个惟一的inode号。文件属性保存在索引结点里,在访问文件时,索引结点被复制到内存在,从而实现文件的快速访问。 链接是一种在共享文件和访问它的用户的若干目录项之间建立联系的一种方法。Linux中包括两种链接:硬链接(HardLink)和软
2015-10-24 15:18:53
597
转载 Linux 文件操作总结
参看资料:Linux 程序设计出处:http://www.cnblogs.com/yanlingyin文件是linux中的一个重要概念。在Linux中,一切(几乎一切)都是文件。简单的说,C中基本的的printf()函数,scanf()函数,其实都属于文件操作。对于文件操作,虽然都是通过函数调用的方式实现,却还是能分为两类:系统调用和库函数。这篇文章将先介绍linux中文件的概念,
2015-10-24 15:18:27
196
原创 cd 命令技巧
cd 进入用户主目录;cd ~ 进入用户主目录;cd - 返回进入此目录之前所在的目录;cd .. 返回上级目录(若当前目录为“/“,则执行完后还在“/";".."为上级目录的意思);cd ../.. 返回上两级目录;cd !$ 把上个命令的参数作为cd参数使用。
2015-10-24 14:36:47
483
原创 kernel内核的头文件#include
在linux中包含头文件时,有不少类似如下的写法:#include,但在linux kernel的include文件夹下并没有这个文件夹,倒是有不少以asm打头的文件夹,如:asm_powerpc、asm_ppc等。源代码中没有asm这个文件夹,asm是一个符号连接,只有在你的主makefile的ARCH 变量赋值,编译内核的时候根据ARCH 的配置,临时的生成asm文件夹及其下的文件
2015-10-24 14:35:23
8031
原创 freeseal修改屏幕锁和永不修眠
(1) 修改屏幕锁: frameworks/base/packages/SettingsProvider/res/values/defaults.xml 60000 60000改成想要的时间如果是不锁为-1(2) 修改不休眠 /frameworks/base/packages/keyguard/src/com/android/keyguard/Keygura
2015-10-22 14:47:27
689
转载 Linxu2.6的内核配置系统
如果你浏览一下源代码目录,就可以发现源码目录及其子目录中有很多的KConfig文件和Makefile文件。这些文件什么作用呢?正是这些文件组成了Linux2.6的内核配置系统。 一、make menuconfig的背后------KConfig文件的组织 有没有想过,我们make menuconfig后,显示的那个菜单列表是怎么来的?带着这个疑问,我们先来简单学一下Kco
2015-10-19 13:44:44
131
转载 Freescale iMX53平台UBoot中启动参数说明(二)
bootcmd_SD=mmc dev 1 0; mmc read ${loadaddr} 0x800 0x2000;mmc read ${rd_loadaddr} 0x3000 0x1200:设置启动设备及kernel和ramdisk加载。:设置当前设备为1(在我的系统中1表示mmc,0表示SD)以及分区为0。:表示将当前设备中从第0x800个block开始的0x2000个block中的内
2015-10-08 12:15:55
819
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人