forked from songw9s8x7/input--
-
Notifications
You must be signed in to change notification settings - Fork 0
kongan/input--
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
linux debug(lidbg) 项目说明:此项目是以调试为目的,方便调试和控制外设(如在终端直接控制i2c,io,spi,读内存寄存器等)。 后来运用在产品中,目前我们写的驱动均是以ko的形式加载运行,代码集成在lidbg_qrd中。 ----------代码下载方法---------- 下载:git clone [email protected]:/home/qcom_share/lidbg_qrd 密码:小写字母 l ----------代码结构-------------- 主要包含应用层(hal),基础驱动模块(core),具体工作模块(drivers),编译脚本(build),输出目录(out)。 *应用层(hal) hal/JAVA:提供一些函数模块,可直接用于上层java代码中(例如把java程序中的打印信息输出到串口)。 详见hal/README *基础驱动模块(core) 作用主要有两个: 1.封装不同soc的底层实现(例如i2c / io / spi / ad / pwm等,在soc/soc目录),提供通用接口给其他模块。通过共享其包含指针函数的结构体地址,给其他模块(主要是drivers下的模块)调用。 2.创建节点/dev/mlidbg0,提供在shell终端控制外设调试的命令,具体的命令参考soc\$soc\doc\echo_shell_soc.txt。 *具体工作模块(drivers) drivers下是在不同平台下的一些具体实际工作,为了保证其平台可移植性,尽量不要调用soc的底层函数,而是调用core提供的通用接口: 详见drivers/README *编译脚本(build) build:编译使用到的脚本。 输出目录(out) out:编译后自动生成,存放所有编译生成的模块。 ----------编译方法---------- 1.配置编译环境 cd lidbg_qrd (1) cp ./build/dbg_cfg_example.sh ./dbg_cfg.sh (2) 修改DBG_SYSTEM_DIR等环境变量(指向的包的内核需编译过一遍(make bootimage)) (3) chmod 777 ./* -R 以上步骤只需配置一次 dbg_cfg.sh编译环境变量配置说明: 详见soc/$soc/README 2.编译 *模块提供两种方法 (1) 编译所有模块,在lidbg根目录运行lidbg.sh 2 (build.sh) (2) 编译单独模块,如在lidbg根目录执行: ./build/make.sh drivers/gps ./build/make.sh core 生成模块在out目录 *应用层(hal)的编译 在hal目录下的build_all.sh脚本,生成模块(apk、可执行文件等)在out目录 3.运行clean.sh(lidbg.sh 1)可清除所有编译后产生的文件。 --------------运行------------- 正式产品包已经默认加载lidbg相关模块,要是想push自己的lidbg模块到机器执行,执行下面指令: 原生系统执行 tools/push.sh 产品系统执行 tools/pushfly.sh 以下两种方法均可运行模块 1.在终端用insmod指令直接加载模块(默认加载的原生系统,/system/lib/modules目录) 执行 tools/insmod.sh (正式产品是flysystem/lib/out目录) 2. 开机自动运行lidbg_servicer和lidbg_loader.ko加载模块 详见soc/$soc/README -------------集成到系统镜像------------- 执行tools/copy2img.sh后重新make编译系统即可 -------------git使用注意事项------------- 1.参考qcom_share 的《git提交规范.txt》 2.个人的测试代码不要push 到服务器master分支,如需要可创建自己的测试分支再push这个分支到服务器。 把本地分支(locate_branch_name) push到服务器(remote_branch_name) git push origin locate_branch_name:remote_branch_name 查看远程分支 git branch -r git pull origin remote_branch_name:locate_branch_name ------------关于tag标签的使用------------------ 查看某个tag: git show 标签名 在本地打标签: git tag -a 标签名 -m "标签的描述信息" 删除本地标签: git tag -d 标签名 同步服务器tag: git fetch --tags 推送tag到服务器: git push origin 标签名 删除远程服务器的tag: git push origin :refs/tags/标签名 列出所有标签: git tag 推送所有tag到服务器: git push -u origin --tags
About
No description, website, or topics provided.
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published
Languages
- C++ 50.1%
- C 48.8%
- Other 1.1%