![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
android 驱动开发
文章平均质量分 87
zhangbijun1230
这个作者很懒,什么都没留下…
展开
-
bootloader
绪论随着android智能手机的普及,硬件性能的逐渐增强,其承载的功能也逐渐增多,Bootloader作为智能手机系统的组成部分之一,作用也越来越重要; 1 、bootloader的概念bootloader是操作系统运行前,运行的一段或几段小程序,目的就是为了初始化硬件,建立内存空间映射图,为OS的运行准备好正确的环境;当然,bootloader还承载着下载软件版本的功能;原创 2018-01-29 20:05:27 · 2242 阅读 · 0 评论 -
Android 驱动(5)---MTK 平台分区表
MTK platform partition meaning Pre-loader Pre-loader image Handles all the download and secure boot procedure DSP_BL DSP Boot Loader MBR、EBR1、EBR2 Ext4 file system par...转载 2018-07-20 08:45:29 · 3609 阅读 · 0 评论 -
android 驱动(6)---DTS 分析
1. dts和dtsi完成的功能 1 uart5: serial@021f4000 { 2 compatible = "fsl,imx6sx-uart", 3 "fsl,imx6q-uart", "fsl,imx21-uart"; 4 reg = <0x021f4000 0x4000>; 5 interrupts =...转载 2018-07-21 15:22:05 · 5016 阅读 · 0 评论 -
android 驱动(7)---.设备、总线、驱动
1.platform device是怎么"自动"关联到platform driver上的?转向linux driver有些时间了,前段时间碰到个问题,在Linux kernel 3.10的drivers/tty/serial/imx.c中,注册driver的时候调用platform_driver_register(&serial_imx_driver),serial_imx_drive...转载 2018-07-21 16:29:10 · 823 阅读 · 0 评论 -
Android 驱动(8)---简单实例讲解linux的module模块编译步骤
简单实例讲解linux的module模块编译步骤原博文地址http://blog.sina.com.cn/s/blog_4ba5b45e0102v25h.html-------------------------------------------------------------------------------------------------------------------...转载 2018-07-21 17:31:23 · 630 阅读 · 0 评论 -
Android 驱动(9)----设备树(一)linux内核主线了解dts
设备树(一)linux内核主线了解dtshttp://events.linuxfoundation.org/sites/events/files/slides/petazzoni-device-tree-dummies.pdf=============================================问题一:以前的Linux Kernel如何描述硬件,现在又如何描述呢?在以...转载 2018-07-22 10:36:48 · 1837 阅读 · 0 评论 -
Android 驱动(10)----设备树(二)linux内核顶层am335x-evm.dts
设备树(二)linux内核顶层am335x-evm.dts 摘自:http://blog.csdn.net/xiaojiezuo123/article/details/49890507了解基本的dts知识之后,就可以为编写自己的dts文件了。Forlinx的OK335xD核心板和底板包含的资源有NANDFLASH、SDRAM、MMC、LCD、UART、USB、ETHERNET等等,因此...转载 2018-07-22 10:46:57 · 986 阅读 · 0 评论 -
Android 驱动(11)---内核3.x版本之后设备树机制
内核3.x版本之后设备树机制转载地址:https://blog.csdn.net/machiner1/article/details/47805069目录内核3.x版本之后设备树机制 1一、设备树(Device Tree)基本概念及作用 3二、设备树的组成和使用 4①DTS和DTSI 4②DTC 4③DTB 5④Bootloader 5三、设备树中dts、...转载 2018-07-22 10:52:18 · 1148 阅读 · 0 评论 -
Android 驱动(12)---Linux DTS(Device Tree Source)设备树详解
Linux DTS(Device Tree Source)设备树详解Linux DTS(Device Tree Source)设备树详解之一(背景基础知识篇)Linux DTS(Device Tree Source)设备树详解之二Linux DTS(Device Tree Source)设备树详解之三(高通MSM8953实例分析篇)一.什么是DTS?为什么要引入DTS? D...转载 2018-07-22 14:01:51 · 3530 阅读 · 1 评论 -
Android 驱动(13)---Makefile, Kconfig和.config关联关系
Makefile, Kconfig和.config关联关系 Makefile, Kconfig和.config关联关系第一步,明确Kconfig是配置文件,现在比如要加入新的内核配置,必须在相关Kconfig文件中添加类似:ConfigNEW_FEATURE第二步,在Makefile添加obj-$(CONFIG_NEW_FEATURE) += new_feature.o第三步,...转载 2018-07-23 09:20:16 · 532 阅读 · 0 评论 -
Android 驱动(15)---如何修改USB驱动能力
如何修改USB驱动能力 修改或查看USB驱动能力有三种方法: 1、工模菜单 通过"*#*#3646633#*#*"进入工程模式,通过如下菜单可以查看修改USB驱动能力: hardware testing-->USB-->USB PHY TUning-->USB_DRIVING_CAPABILITY; 2、USB节点 有ROOT权限im...原创 2018-07-28 09:27:04 · 2383 阅读 · 0 评论 -
Android 驱动(16)---AOSP如何单独build kernel
AOSP如何单独build kernel解决方案如果只是修改kernel 中单一模块,如何快速build kernel模块? ARCH : 指的是所编译的类型 (arm 、arm64 或者x86)project:指的是所要编译的Project name 1,build 对应的模块cd kernel-3.10mkdir outmake ARCH=arm64 O=...转载 2018-07-28 09:27:58 · 3331 阅读 · 0 评论 -
Android 驱动(17)---如何在linux中添加新的kernel module
如何在linux中添加新的kernel module该SOP针对客户如何添加一个kernel module,并把生成的.ko打包进system.img的过程。解决方案L版本(version>=5.0)支持编译为内核moudle(.ko文件)的config选项默认是关闭的。因此,如在L版本上编译.ko文件,需先在项目defconfig文件中打开内核配置选项CONFIG_MODU...转载 2018-07-28 09:47:00 · 2159 阅读 · 1 评论 -
Android 驱动(3)---Android驱动开发知识储备
Android驱动开发知识储备Android软件层次结构(1)操作系统层显示驱动(Frame Buffer),Flash内存驱动,照相机驱动,音频驱动,WiFi驱动,键盘驱动,蓝牙驱动,Binder IPC驱动,Power Management ,这些都包括在Linux内核里。(2)各种库和Android运行环境C库、多媒体框架、SGL(2D图像引擎),SSL(安全),OpenGL ...转载 2018-07-20 08:43:13 · 6024 阅读 · 0 评论 -
Android 系统(4)---Android HAL层与Linux Kernel层驱动开发简介
Android HAL层与Linux Kernel层驱动开发简介近日稍微对Android中的驱动开发做了一些简要的了解,稍稍理清了一下Android驱动开发的套路,总结一下笔记。HAL:Hardware Abstract Layer 硬件抽象层,由于Linux Kernel需要遵循GPL开源协议,硬件厂商为了保护自己硬件方面的各项参数不被外泄,而一个设备的驱动程序包含了硬件的一些重要参...转载 2018-07-20 08:43:56 · 915 阅读 · 0 评论 -
Android平台_驱动_SD_软件 概要设计说明书
1.引言1.1 编写目的 手机项目中描述SD部分的驱动设计架构、设计方法。为上层应用提供底层的函数接口和功能,方便上层对SD应用的正确调用,作为开发和测试人员制定测试规范的参考文档。主要读者适用于手机项目组驱动开发人员,软件代表,项目经理、测试等相关人员,供其他项目组驱动人员参考。 1.2缩略语缩略语 英文全名 中文解释 SD Secure digital memory card ...原创 2018-03-07 14:50:48 · 3002 阅读 · 0 评论 -
MTK PerfService介绍
1、在MTK芯片上如何控制CPU的核数和频率-MTK PerfService一句话:PerfService就是用来调整CPU/GPU资源的。对于老的API,可以更简单地讲就是调CPU核数和CPU频率的。1.1PerfService简介kernel中实现了两个driver,一个负责控制开关CPU的核数,叫做hot-plug驱动,另一个负责调整CPU的频率,叫做DVFS驱动。 kernel中的driv...原创 2018-03-08 22:22:01 · 3003 阅读 · 0 评论 -
linux 驱动基础知识(2)---设备树
转载自 http://huaqianlee.me/2015/08/19/Android/高通平台Android源码分析之Linux内核设备树-DT-Device-Tree-dts文件/刚开始接触Android源码的时候,发现在kernel里面多了一种dts文件,因为当初自学Linux时和在第一家公司做物联网模型时都是用的比较老的内核,内核代码还比较混乱,没有采用dts这种方便简洁的格式。后面才知道...转载 2018-03-09 15:25:30 · 1438 阅读 · 0 评论 -
linux驱动基础知识(1)--总线理解
Linux设备驱动归纳总结,觉得这里写的很好http://blog.chinaunix.net/uid-25014876-id-59420.html1. 总线、设备和驱动 总线、设备和驱动2 bus.c#include <linux/module.h> #include <linux/init.h> #include <...转载 2018-03-10 11:06:29 · 985 阅读 · 0 评论 -
MTK 驱动(100)---GPS调试宝典
GPS 基本知识Ø 1.1)GPS定位和网络定位有什么不同?GPS定位是需要卫星参与的,设备借助搜到的卫星讯号,来计算出来设备的位置。网络定位是指利用基站、WIFI MAC,获取一个粗略的位置。Ø 1.2)3D定位和2D 定位的区别?3D一般是指使用至少4颗以上卫星完成的定位。2D一般使用3颗卫星完成的定位过程。3D相比于2D 定位,即定位精度更高。Ø 1.3)卫星分布对GPS perfor...转载 2018-04-06 12:05:07 · 9589 阅读 · 1 评论 -
Android 下 Kernel Debug (Qualcomm Chipset)
Android 下 Kernel Debug (Qualcomm Chipset)2015年04月02日 20:34:47阅读数:547Android 下 Kernel Debug (Qualcomm Chipset) 1. 背景 本文面向Linux/Android系统的Kernel Debug技术。 涉及Linux Kernel,Android Native,Android Framework...转载 2018-05-13 20:59:10 · 1529 阅读 · 0 评论 -
Android架构实例分析之编写hello驱动的HAL层代码
Android架构实例分析之编写hello驱动的HAL层代码2016年07月08日 16:20:50阅读数:4235Android架构实例分析之编写hello驱动的HAL层代码摘要:HAL层中文名称又叫硬件抽象层,可以理解我Linux驱动的应用层。本文实现了一个简单的hello HAL的代码,衔接hello驱动和hello JNI:http://blog.csdn.net/eliot_shao/a...转载 2018-06-21 21:50:09 · 667 阅读 · 0 评论 -
Android HAL层与Linux Kernel层驱动开发简介
Android HAL层与Linux Kernel层驱动开发简介2017年03月23日 13:29:24阅读数:5070近日稍微对Android中的驱动开发做了一些简要的了解,稍稍理清了一下Android驱动开发的套路,总结一下笔记。HAL:Hardware Abstract Layer 硬件抽象层,由于Linux Kernel需要遵循GPL开源协议,硬件厂商为了保护自己硬件方面的各项参数不被外泄...转载 2018-06-21 21:50:29 · 1218 阅读 · 0 评论 -
Android 驱动开发(14)---深入学习Linux Device Tree
深入学习Linux Device Tree 这个世界需要的是全力以赴,战胜他人先战胜子自己!! Linux Device Tree可描述的信息包括:cpu的数量和类型 内存基地址和大小 总线 外设 中断控制器 GPIO控制器 Clock控制器 bootloader会将这颗树传递给内核,内核根据它展开出linux内核中的platform_device,input...转载 2018-07-23 10:29:27 · 880 阅读 · 0 评论 -
Android驱动(1)---Ubuntu中为Android系统上编写Linux内核驱动程序实现方法
Ubuntu中为Android系统上编写Linux内核驱动程序实现方法 本文主要介绍在Ubuntu 上为Android系统编写Linux内核驱动程序, 这里对编写驱动程序做了详细的说明,对研究Android源码和HAL都有巨大的帮助,有需要的小伙伴可以参考下 在智能手机时代,每个品牌的手机都有自己的个性特点。正是依靠这种与众不同的个性来吸引用户,营造品牌凝聚力和用...转载 2018-07-19 13:41:43 · 874 阅读 · 0 评论 -
Android 驱动(2)---MTKAndroid添加驱动模块
MTK Android添加驱动模块 1 [编写linux驱动程序] 1.1 一、编写驱动核心程序 1.2 二、配置Kconfig 1.3 三、配置Makefile 1.4 四、配置系统的autoconfig 1.5 五、编译 2 [编写hal模块] 2.1 一、新建xxx.h文件 2.2 二...转载 2018-07-19 13:50:27 · 1712 阅读 · 1 评论 -
MTK 平台修改或查看USB驱动能力有三种方法
MTK 平台修改或查看USB驱动能力有三种方法: 1、工模菜单 通过"*#*#3646633#*#*"进入工程模式,通过如下菜单可以查看修改USB驱动能力: hardware testing-->USB-->USB PHY TUning-->USB_DRIVING_CAPABILITY; 2、USB节点 有ROOT权限i...翻译 2018-10-22 21:33:11 · 3991 阅读 · 0 评论