如何在kernel中预置obj文件 ,将编译的驱动文件xxx.c用xxx.o替代编译

9 篇文章 1 订阅
订阅专栏

如何在kernel中预置obj文件 即要将编译的驱动文件xxx.c用xxx.o替代编译

下面介绍的这个是最通用的方法:
我用RK的drm显示驱动路径为kernel\drivers\gpu\drm\panel\panel-simple.c为例
1 先正常编译出panel-simple.o文件
在这里插入图片描述
2 将panel-simple.o重新命名为panel-simple.o_shipped,并分别放在新建的user和eng文件夹中,同时在eng和user文件夹中增加一个Makefile文件,注:user和eng文件下的panel-simple.o_shipped和Makefile文件是一样的
在这里插入图片描述
注:user和eng目录下的panel-simple.o_shipped和Makefile文件是一样的
在这里插入图片描述
3 最后增加相关的编译规则 Makefile文件就可以了
1)我们先修改panel-simple.c所在目录下的Makeflie文件,然后在该目录下新建一个文件夹,我这里自定义文件名字是elink_led,如下图所示:

要修改的makefile文件
在这里插入图片描述
路径为kernel/drivers/gpu/drm/panel/Makefile文件 修改如下:

zqb@build-server-99:~/work104/3399/work2/3399-Android-9.0/kernel$ git diff drivers/gpu/drm/panel/Makefile
diff --git a/drivers/gpu/drm/panel/Makefile b/drivers/gpu/drm/panel/Makefile
old mode 100644
new mode 100755
index d0f016d..0f230b3
--- a/drivers/gpu/drm/panel/Makefile
+++ b/drivers/gpu/drm/panel/Makefile
@@ -1,5 +1,8 @@
-obj-$(CONFIG_DRM_PANEL_SIMPLE) += panel-simple.o
+#obj-$(CONFIG_DRM_PANEL_SIMPLE) += panel-simple.o
 obj-$(CONFIG_DRM_PANEL_LG_LG4573) += panel-lg-lg4573.o
 obj-$(CONFIG_DRM_PANEL_SAMSUNG_LD9040) += panel-samsung-ld9040.o
 obj-$(CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0) += panel-samsung-s6e8aa0.o
 obj-$(CONFIG_DRM_PANEL_SHARP_LQ101R1SX01) += panel-sharp-lq101r1sx01.o
+ifeq ($(CONFIG_DRM_PANEL_SIMPLE),y)
+     obj-y += elink_led/
+endif

在这里插入图片描述
elink_led目录
在这里插入图片描述
**2)在自定义elink_led文件夹下增加下面的编译规则 **
在这里插入图片描述
路径为kernel/driver/gpu/drm/panel/elink_led/Makefile文件内容如下:
在这里插入图片描述
3) 在user和eng目录增加一条编译规则Makefile文件,注:user和eng目录下的Makefile和panel-simple.o_shipped文件是一模一样的
在这里插入图片描述

user和eng目录下的Makeflie文件内容如下:

在这里插入图片描述

4)最终编译可以看到在user目录下panel-simple.o_shipped成功编译出我们想要的panel-simple.o文件,因为我编的是TARGET_BUILD_VARIANT=userdebug版本所以会在user目录下编译 , 这是由于elink_led目录下的这条编译规则

ifeq ($(TARGET_BUILD_VARIANT),eng)
obj-y += eng/
else
obj-y += user/
endif

编译出来的panel-simple.o文件
在这里插入图片描述

Java将数据存储在obj文件并读取出来.rar
07-10
Java将数据存储在obj文件并读取出来,数据存储在label.obj,通过读取和生成文件流,得到对象输出流的方法来存储和读取文件对象,读取对象后关闭文件流并输出提示信息。。
ply.zip_obj文件转ply_ply文件_ply文件读取_site:www.pudn.com_读取ply文件
07-15
基于vc++的ply文件的读取和写入,实用于ASCII和binary两种
如何在kernel模块使用已经编译好的obj文件
爱的海洋
01-18 291
这也是一时心血来潮,觉得好玩。 在Document/kbuild/modules.txt看到这么一段 --- 3.3 Binary Blobs Some external modules need to include an object file as a blob. kbuild has support for this, but requires the blob file ...
如何编译预置obj 文件
09-30 1354
1. 如何在preloader 预置obj 文件? Branch: GB, GB2, ICS, ICS2, JB, JB2 Step1. 首先获取obj 文件,如果是preloader 已有的Source code 需要预置obj 文 件,那么可到如下路径获取obj 文件:mediatek/[source]/preloader/out Step2. 在mediatek/[source]
linux_2.6.30.4_Makefile_7--obj-y将.c编译为.o流程 (2012-05-06 21:03)
kerson的专栏
08-07 4285
标签:  linux_2.6.30.4_Make  obj-y将.c编译为.o  分类: Linux_内核 先去编译obj-y,以init下的obj-y为例: obj-y=init/main.o init/version.o init/mounts.o init/noinitramfs.o init/calibrate.o 首先找到将.c编译为.o的规则
kernel的Makefile分析
longshan_2009的专栏
03-18 773
以make uImage的过程进行分析 make uImage V=1  //会把命令详细地给你列出 分析makefie的目的: 1.第一个文件 head.S 2.链接脚本,文件是如何排列的。 vmlinux.lds是编译后生成的 在Kernel下面有几个Makefile: 1.子目录下面的Makefile 2.对应架构体系的Makefile,一般在目录arch/$(ARCH)
kernel源码分析(一)配置和编译过程》
abc123451234565的博客
09-04 247
1.内核的配置和编译 cp arch/arm/configs/xx_defconfig .config make menuconfig make uImage 2.了解内核的配置过程和编译过程   在内核的配置过程,会生成文件.config。   以网卡DM9000为例:   在.config可以找到”CONFIG_DM9000=y“,这表示这个模块会...
Linux驱动的.o文件与.ko文件的区别
天天向上... ...
12-22 6129
<br />最近在学习linux的驱动,之前做嵌入式实验的时候加载驱动模块都是.o文件,但是现在发现很多驱动模块都是.ko文件,于是上网查了一下两者的区别,现在贴出来,和大家一起分享。  .o文件也就是object文件,.ko文件kernel object文件,与.o的区别在于其多了一些sections,比如.modinfo。.modinfo section是由kernel source里的modpost工具生成的,包括MODULE_AUTHOR, MODULE_DESCRIPTION, MODULE_L
kernel compile with detail information
08-24 405
root@ubuntu:/usr/src/linux-5.0.1# make V=1 -j 10 make -f ./scripts/Makefile.build obj=arch/x86/entry/syscalls all make -f ./scripts/Makefile.build obj=scripts/basic set -e; mkdir -p include/config/; {...
这是一个教你如何在vc+OpenGL读取.obj文件的程序.zip
01-30
这是一个教你如何在vc+OpenGL读取.obj文件的程序
obj2mat.rar_.obj文件_obj_obj matlab_obj 转mat_obj格式文件
07-15
可以读取obj格式的文件到matlab空间obj格式的文件,只能包含点和面的信息
obj.rar_obj_obj C++_obj 加载_obj文件_site:www.pudn.com
09-21
一个加载obj文件的程序,希望对你有帮助
RS232和RS485通讯接口的区别
MrDongShiYi的博客
09-11 9142
在项目发现出现UART转RS-232和UART转RS-485的通讯端口,以此作记录下两者的区别: 1. 传输方式不同。 RS-232采取不平衡传输方式,即所谓单端通讯. 而RS485则采用平衡传输,即差分传输方式。 2 .传输距离不同。RS-232适合本地设备之间的通信,传输距离一般不超过20m。而RS-485的传输距离为几十米到上千米。 3 .RS-232 只允许一对一通信,而RS-485...
RK3288[android 7.1]调试笔记 修改默认的PreviewSize预览分辨率和PictureSize照片大小
MrDongShiYi的博客
06-27 5127
RK3288[android 7.0]调试笔记 修改默认的PreviewSize预览分辨率和PictureSize照片大小 从log知道自带摄像头应用是会根据支持的分辨率并结合屏的分辨率去选择最优分辨率的 01-18 16:52:13.918 226 706 I CameraHal: initDefaultParameters(170): dsy log:initDefaultParam...
[调试记录]3288 7.1平台上移植美格 SLM790 4G模块
MrDongShiYi的博客
03-06 2605
[调试记录]3288 7.1平台上移植美格 SLM790 4G模块驱动配置 1.1 PPP 配置 需要配置 Android 内核来支持 PPP 功能,按照以下步骤来配置 PPP 选项 Device Drivers ---> [*] Network device support ---> <*> PPP (point-to-point protocol) support...
RK3288 linux版本编译问题
MrDongShiYi的博客
06-05 2248
一般无论编译RK3288 android版本还是linux版本编译不过的主要原因是自己的编译环境配置问题。 遇到问题: 问题1 :当进入工程目录根目录执行以下命令完成 对recovery 的编译及打包 执行命令: ./build.sh recovery 出现以下log: realpath: command not found 解决:原因是环境没有realpath这个工具包,安装 realpat...
mtk 电池曲线原始数据表的来源
MrDongShiYi的博客
12-20 2078
mtk 电池曲线原始数据表的来源 25摄氏度,常温下 ocv 放电30min时所测的电压 vc 放电3min时所测的电压 mAh:电池容量的计量单位,实际就是电池可以释放为外部使用的电子的总数。 物理上的标准的单位就是库仑。库仑的国际标准单位为电流乘于时间的安培秒 电压比是额定的,蓄电池上都标有这种标记,例如“36V/10Ah”。 举例如下: 一个3000mAH,额定电压5V的电池给一个功...
一个简单的驱动程序
MrDongShiYi的博客
08-10 1397
一个简单的驱动程序———模块框架 1,基本的模块的框架 1&amp;amp;gt;头文件 #include &amp;amp;lt;linux/init.h&amp;amp;gt; #include &amp;amp;lt;linux/module.h&amp;amp;gt; 2&amp;amp;gt;模块加载函数和模块卸载函数 static int __init hello_init(voi
在DOSBox用LINK将.OBJ文件连接成可执行的Hello.EXE文件
最新发布
05-25
在DOSBox使用LINK将.OBJ文件连接成可执行的Hello.EXE文件,需要按照以下步骤操作: 1. 首先,在DOSBox进入存放.OBJ文件的目录。可以使用CD命令切换目录。 2. 然后,输入以下命令连接.OBJ文件: ``` LINK HELLO.OBJ ``` 这条命令将会链接名为HELLO.OBJ文件,并生成一个名为HELLO.EXE的可执行文件。 3. 最后,输入以下命令运行HELLO.EXE文件: ``` HELLO.EXE ``` 这条命令将会运行名为HELLO.EXE的可执行文件。 需要注意的是,LINK命令需要在安装了MASM或TASM的DOSBox环境才能使用。如果没有安装这些汇编器,需要先安装它们才能使用LINK命令。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
写文章

热门文章

  • c 语言基础笔试题1 18151
  • RK3288[android 7.1]调试笔记 LVDS屏调试 9199
  • RS232和RS485通讯接口的区别 9138
  • LINUX中的七种文件类型 7881
  • 用shell命令写打印log信息脚本信息 7077

分类专栏

  • MTK调试笔记 8篇
  • 嵌入式 57篇
  • 笔记 9篇
  • 电池 1篇
  • 调试笔记 29篇
  • RK32887.0 21篇
  • RK 18篇
  • rk3288 7.0

最新评论

  • MTK8362 9.0上调试 型号为cht8305温湿度传感器

    qq_26238967: 你好,FAE只给我了单片机的示例代码,是只有这个吗?Linux内核驱动需要自己写是吗?如果可以的话能麻烦您把cht8305.c的代码转我一份作为参考吗?可以有偿,非常感谢!

  • RK3288[android 7.1]调试笔记 移除u-boot层logo显示,保留kernel层logo显示

    静恒枫榭: 您好,我想问下修改思路怎么想出来的,太牛了

  • RK3288[android 7.1]调试笔记 在安卓下拉状态栏的亮度进度条增加一条控制副屏亮度的进度条

    采橘东篱下…: 这样子修改背光的值,拖动背光条的时候背光会好闪的。

  • [调试记录]3288 7.1平台上移植美格 SLM790 4G模块

    STM32李逼: 谢谢大哥

  • RK3288[android 7.1]调试笔记 LVDS屏调试

    x2751961352: 楼主您好,想请教一下目前调试的京东方1280x768LVDS显示屏,背光有亮,屏幕供电也正常,时钟频率也对,但就是只有背光点亮,显示不了图片,希望楼主能指点一下是什么原因,感谢!

大家在看

  • 使用 Unity Sentis 和 genderage.onnx 进行高效性别年龄预测
  • 【cuicui小课堂】Python中列表、元组、字典的切片操作 244
  • Python基础:列表(List)详解 421
  • 【Java】搜索引擎设计:信息搜索怎么避免大海捞针?
  • 15、matlab绘图汇总(图例、标题、坐标轴、线条格式、颜色和散点格式设置) 63

最新文章

  • MTK 9.0平台上zigbee_bm023模块的调试
  • 不使用jni方式,为上层应用提供接口,实现led灯的开关
  • MTK 9.0平台调试gsensor
2020年9篇
2019年47篇
2018年45篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

聚圣源培训公司起名公司起名的方法每个站点都有风景作文600字我的贴身校花灵格斯翻译软件低俗喜剧下载十元店怎么起名贤者之爱百度云起名8笔画的硬盘分区工具下载工业风饭店起名赵和王怎么起名字吕姓宝宝起名大全通讯行业注册企业起名长征故事瑜字起名女童六零有姻缘年轻人如何创业湖水像什么好寓意的起名字成语给宝贝起名字大全男高中语文电子课本风声演员表面馆起什么名字好起名字少什么张姓中间占一字怎么起名起来个商标名深圳起名字大师赤脚小子中望软件淀粉肠小王子日销售额涨超10倍罗斯否认插足凯特王妃婚姻让美丽中国“从细节出发”清明节放假3天调休1天男孩疑遭霸凌 家长讨说法被踢出群国产伟哥去年销售近13亿网友建议重庆地铁不准乘客携带菜筐雅江山火三名扑火人员牺牲系谣言代拍被何赛飞拿着魔杖追着打月嫂回应掌掴婴儿是在赶虫子山西高速一大巴发生事故 已致13死高中生被打伤下体休学 邯郸通报李梦为奥运任务婉拒WNBA邀请19岁小伙救下5人后溺亡 多方发声王树国3次鞠躬告别西交大师生单亲妈妈陷入热恋 14岁儿子报警315晚会后胖东来又人满为患了倪萍分享减重40斤方法王楚钦登顶三项第一今日春分两大学生合买彩票中奖一人不认账张家界的山上“长”满了韩国人?周杰伦一审败诉网易房客欠租失踪 房东直发愁男子持台球杆殴打2名女店员被抓男子被猫抓伤后确诊“猫抓病”“重生之我在北大当嫡校长”槽头肉企业被曝光前生意红火男孩8年未见母亲被告知被遗忘恒大被罚41.75亿到底怎么缴网友洛杉矶偶遇贾玲杨倩无缘巴黎奥运张立群任西安交通大学校长黑马情侣提车了西双版纳热带植物园回应蜉蝣大爆发妈妈回应孩子在校撞护栏坠楼考生莫言也上北大硕士复试名单了韩国首次吊销离岗医生执照奥巴马现身唐宁街 黑色着装引猜测沈阳一轿车冲入人行道致3死2伤阿根廷将发行1万与2万面值的纸币外国人感慨凌晨的中国很安全男子被流浪猫绊倒 投喂者赔24万手机成瘾是影响睡眠质量重要因素春分“立蛋”成功率更高?胖东来员工每周单休无小长假“开封王婆”爆火:促成四五十对专家建议不必谈骨泥色变浙江一高校内汽车冲撞行人 多人受伤许家印被限制高消费

聚圣源 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化