- 博客(13)
- 收藏
- 关注
原创 android HIDL HAL控制LED demo(一)之C++作客户端
目录基本环境演示场景一、 HIDL 代码二、纯 Binder 化 HAL三、HAL 纯绑定式服务器四、系统配置五、C++实现 HAL 客户端六、JAVA实现 HAL 客户端参考文献基本环境开发板:hikey960 (4G+32G版本)代码:aosp,Android R(master分支)开发环境:64bit ubuntu 16.04演示场景一、 HIDL 代码二、纯 Binder...
2020-05-25 01:03:14
7367
3
原创 android HIDL HAL控制LED demo(二)之JAVA作客户端
目录基本环境演示场景基本环境开发板:hikey960 (4G+32G版本)代码:aosp,Android R(master分支)开发环境:64bit ubuntu 16.04演示场景
2020-05-25 01:01:54
3161
3
原创 android studio项目嵌入到Android系统源码
目录基本环境演示场景基本环境开发板:hikey960代码:aosp,Android R开发环境:Windows 10 Pro,Android Studio 3.4,64bit ubuntu 16.04演示场景commit c45c72caf8b779c5a87b90927ade8e59013a2f63 (HEAD -> master)Author: lucifer <xiangdong@trustkernel.com>Date: Sat May 23 02:44:5
2020-05-23 03:16:08
800
原创 Android Studio开发NDK代码
目录基本环境演示场景一、JAVA基本环境开发板:hikey960代码:aosp,Android R开发环境:64bit ubuntu 16.04,Android Studio 3.4演示场景使用Android studio开发 native代码,通过文件操作函数open()、close()、write直接访问LED的设备节点,控制LED的亮灭。一、JAVA...
2019-08-26 03:29:59
369
原创 Android 使用 platform key 给apk签名
如果使用Android Studio对代码进行make project后,将输出的app-debug.apk部署到手机/system/app下,虽然该apk能作为系统 app 自动安装并无法删除,但他在 selinux 中属于 u:r:untrusted_app:s0标签(域),只有访问 ASEC、SD卡、TCP/UDP socket、PTY的权限,且属于neverallow规则的限制,在源码中无...
2019-08-17 23:52:10
6986
原创 android驱动开发基础
android基础一、基本环境二、build三、JNI1. 编写Android.mk2. LOG系统一、基本环境开发板:hikey960二、build添加新的lunch选项(新产品):赋值COMMON_LUNCH_CHOICES,PRODUCT_MAKEFILES如下 (参考device/sample/products/AndroidProducts.mk,实例参考device/linar...
2019-08-17 23:13:26
2454
2
原创 Linux 2.6启动流程分析(结合开机log分析)
关于Linux启动流程的分析,以kernel 2.6.35.7为背景进行分析。一、head.S(arch/arm/kernel)ENTRY(stext): 1. 设置CPSR:CPU为SVC模式,禁止IRQ和FIQ; 2. 从cp15读得cpuid; 3. __lookup_processor_type:在.proc.info.init段中搜索与cpuid一致的p...
2019-03-25 22:11:31
2084
1
原创 移植u-boot v2018
本篇文章阐述移植 u-boot v2018.01 至 S5PV210 开发板上的主要流程和细节。市场上的S5PV210开发板,均是基于三星smdkv210公版平台山寨出来的。我使用的GEC210开发板也与公版只数个元器件的差异。所以,若你也用S5PV210类开发板,参考本篇文章,或者直接使用我发布的补丁打到源码上,能帮你解决许多困惑及运行最新的u-boot。结果下载u-boo...
2018-07-03 00:41:51
4973
10
原创 u-boot v2018.01 启动流程分析
make smdkc100_defconfig 以被默认支持的smdkc100单板为背景分析u-boot v2018.01参考图1可知uboot code链接顺序: 图1 u-boot.lds一、sections.c (arch\arm\lib)第24行:char __image_copy_s...
2018-05-01 16:14:47
8778
原创 Linux Kernel SPI子系统架构
简介 本文主要讲解linux的spi子系统。从宏观到微观的角度,循序渐进解剖spi子系统,为开发spi相关驱动打好基础;也可通过此文理解linux相关总线子系统(如I2C、USB)的实现思想和本质,避免看内核源码时,处于管中窥豹的状态。 软硬件环境linux kernel version:2.6.35.
2017-12-30 20:33:17
3080
原创 git关键套路及实用命令
前言第一章 git安装和创建版本库1. 安装git2. 创建版本库第二章 时光机穿梭第三章 远程仓库1. 添加远程库2. 从远程库克隆到本地第四章 分支管理1. 创建与合并分支:2. 解决分支冲突3. 分支管理策略a. 禁用Fast forward合并分支b. 分支管理4. bug分支5. 强行删除分支6. 多人协作a. 推送分支b. ...
2017-12-24 01:25:14
818
原创 内存不对齐访问(unaligned access)及汇编下宕机—ARM架构从入门到砸板跑路
lucifer做arm汇编开发,在访问一个.data段的空间(全局变量)时,发生了宕机;未见进入数据中止异常,和未定义指令异常的处理函数中,让我一脸懵逼。 接着查资料发现,发现对内存进行加载和存储的指令具有如下限制:LDRB/STRB - address must be byte alignedLDRH/STRH - address m
2017-12-03 01:27:54
11917
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人