如何向瑞芯微平台添加驱动

  • 驱动配置
    • 驱动文件放置
    • 配置相应的编译选项
    • 与设备树结合
  • 设备树配置

以avafpga视频驱动为例:

驱动配置

驱动文件放置

为了保证驱动文件能够被系统正确识别编译,需要将驱动文件的源文件avafpga.c放在./kernel/drivers/media/i2c/下
将驱动文件的头文件avafpga.h放在kernel/include/config/video/下,即使头文件是空文件也要创建。

配置相应的编译选项

以avafpga驱动为例,在配置文件kernel/drivers/media/i2c/Kconfig中加入“config VIDEO_AVAFPGA”,其中VIDEO代表属于与视频相关的驱动,AVAFPGA对应驱动的名称。

在kernel/drivers/media/i2c/Makefile文件中需要加入obj-$(CONFIG_VIDEO_AVAFPGA) += avafpga.o,表示VIDEO_AVAFPGA的驱动文件为avafpga.o文件,此文件后续系统会根据avafpga.c文件编译生成。

与设备树结合

此时会完成avafpga的驱动编译,然后还要将驱动文件和设备树结合,使得设备能够找到对应的驱动。
观察执行 ./build.sh kernel的输出,观察参与编译kernel配置文件

框中对应的文件都在kernel/arch/arm/configs/文件夹下,向对应的文件中加入 CONFIG_VIDEO_AVAFPGA=y
需要在kernel/arch/arm/configs/rv1126_defconfig文件中加入CONFIG_VIDEO_AVAFPGA=y,在kernel/arch/arm/configs/rv1126-facial-gate.config文件中也加入CONFIG_VIDEO_AVAFPGA=y,代表将驱动加入到设备树中。

设备树配置

按照设备树代码习惯,可以将avafpga驱动写成一个avafpga.dtsi文件,在需要用到的时候,在顶层的dts文件中include进来,方便管理和代码共用。

此时在设备树文件最外层执行./build.sh kernel,即可对内核进行编译,正确编译后会发现在. /kernel/drivers/media/i2c/下会产生avafpga.o文件。

如何向瑞芯微平台添加驱动相关推荐

  1. rk3568 | 瑞芯微平台GPIO引脚驱动编写

    最近在玩瑞芯微平台的产品,移植了几个设备的驱动,遇到了一些问题,总结后发现大部分问题都出在了GPIO配置的问题上,写下本篇文章,用来分享一下调试的心得. 有喜欢瑞芯微的朋友,可以加我好友,拉你进群,一 ...

  2. 基于瑞芯微平台cif接口dvp相机的视频接入(ov2640、rv1126为例)

    基于瑞芯微平台cif接口dvp相机的视频接入(ov2640.rv1126为例) 名词定义 视频格式 sensor与isp I2C XCLK 行场同步信号 DATA 抓图 名词定义 CIF,指RK芯片中 ...

  3. Camera | 3.瑞芯微平台MIPI摄像头常用调试命令

    瑞芯微专栏 前面2篇我们讲解了camera的一些基础概念和知识. 本文主要讲述在瑞芯微平台上摄像头开发常用的调试命令. 0.环境 soc : rk3568 board: EVB1-DDR4-V10 软 ...

  4. Camera | 4.瑞芯微平台MIPI摄像头应用程序编写

    前面3篇我们讲解了camera的基础概念,MIPI协议,CSI2,常用命令等,本文带领大家入门,如何用c语言编写应用程序来操作摄像头. Linux下摄像头驱动都是基于v4l2架构,要基于该架构编写摄像 ...

  5. 瑞芯微平台最新处理器发布:RK2108,RK3530,RV1109,RK912,RK2206

    在瑞芯微电子第四届"开发者之春"大会上,瑞芯董事长兼CEO励民致欢迎辞后,瑞芯副总裁林峥源与李诗勤分别对"瑞芯产品及应用概述"."瑞芯集成电路的技术发 ...

  6. Rockchip(瑞芯微)平台高速上手指南

    原址 Buildroot开发 Buildroot开发基础 具体的开发技巧可到Buildroot官网学习. Buildroot官网:https://buildroot.org/ 查看Buildroot开 ...

  7. 瑞芯微RK33XX平台的启动流程探究

    如果有问题,请加QQ群 891339868 进行交流 刚开始学习瑞芯微平台时,搞得我一脸懵逼,以前玩过儿imx283,也玩儿过nuc972,觉得应该都差不多,但是发现瑞芯微的底层和前面的两种还是有些不 ...

  8. 瑞芯微 | 摄像头ov13850移植笔记

    <1.瑞芯微rk356x板子快速上手> <2.Linux驱动|瑞芯微rtc-hym8563移植笔记> <3.Linux驱动 | Linux内核 RTC时间架构-基于瑞芯微 ...

  9. 瑞芯微rk356x板子快速上手

    文章目录 rk3568 CPU GPU NPU VPU 一.编译环境要求 二.编译前准备 0)开发板型号 1)安装第三方编译工具 2)设置adb路径 3)安装USB驱动DriverAssitant_v ...

最新文章

  1. 《高可用MySQL》2 – 单机版MySQL主从配置
  2. 华为12月份鸿蒙适配mate40,华为:Mate40系列在12月可优先升级鸿蒙系统
  3. JZOJ 1016. 【PKU3321】苹果树
  4. AAAI 2022上那些值得关注的NLP论文
  5. elf section类型_在 498 行极小 OS 上跑标准 ELF 程序
  6. OracleDB的数据库名,实例名,服务名,数据库域名,全局数据库名的简单介绍
  7. 硬盘结构,主引导记录MBR,硬盘分区表DPT,主分区、扩展分区和逻辑分区,电脑启动过程...
  8. Eclipse中Program arguments和VM arguments的说明
  9. The meta-data is invalid or is corrupt
  10. 深入理解Java中的IO
  11. python中type与isinstance异同
  12. android最贵的手机,2019翻盖手机排行榜_2019年最贵的手机有哪些?最贵手机排行榜...
  13. Quicksort算法之父——1980年图灵奖获得者查尔斯·霍尔
  14. Julia: Dict类型 与 Symbol
  15. mybatis 多数据源_SpringBoot+Mybatis配置多数据源及事务方案
  16. 2021年顶级服务器备份软件和解决方案
  17. 龙门上下料样本程序,四轴。用台达AS228T和台达触摸屏编写
  18. jsp+ssm+mysql实现的校园二手市场交易平台视频教程
  19. 想成为游戏原画师需要哪些系统的学习?
  20. 猫哥教你写爬虫 019--debug-作业

热门文章

  1. C++入门实现黑客攻击系统(准备工作)
  2. 记一次lpk劫持样本分析
  3. Ditto初体验:配置剪贴板数据同步以及局域网同步
  4. Fedora 23及以后版本中启用fastestmirror功能
  5. 精解PCI Express---基础篇
  6. linux添加三个用户lab1,linux操作系统实验linux下用户与组的管理
  7. 【ELK报错】Alias [.kibana] has more than one indices associated with it [[.kibana_1, .kibana_2]]
  8. PySpark大数据分析(1):Spark的安装与文件读取
  9. APICloud云调试解决方案
  10. 《操作系统真象还原》第二章 ---- 编写MBR主引导记录 初尝编写的快乐 雏形已显!