IMX6DL4.1.15支持EIM总线(上)——实际操作,修改内容。

工作中遇到一个客户需要通过IMX6DL的EIM总线和fpga通信。需要配置一条8位数据位,5位地址位的EIM总线。

飞凌6DLlinux4.1.15默认没有配置EIM总线。需要添加EIM总线的配置,实际上,和添加一个串口类似,同样是三步:1、添加EIM总线节点2、配置引脚复用3、去掉其他的引脚功能复用。

一、首先进行节点添加。
1、arch/arm/boot/dts/imx6qdl-sabresd.dtsi文件中添加如下

&weim {
   
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_weim_fpga &pinctrl_weim_cs0>;
        #address-cells = <2>;
        #size-cells = <1>;
        ranges = <0 0 0x08000000 0x08000000>;
        status = "disabled"; /* pin conflict with SPI NOR */
       fsl,weim-cs-gpr = <&gpr>;

        fpga@0,0 {
   
                compatible = "fpga-user";
                reg = <0 0 0x08000000>;
                #address-cells = <1>;
     
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
imx6是NXP公司推出的一款嵌入式处理器,EIM(External Interface Module)总线是它的一种外部接口模块。EIM总线驱动是指在使用imx6处理器时,为了能够对EIM总线进行读写操作,需要通过驱动程序来控制该总线EIM总线驱动的开发主要包括以下几个方面: 1. 硬件初始化:首先需要对imx6处理器的EIM总线进行初始化设置,包括时钟控制、引脚映射、中断配置等。 2. 寄存器操作:EIM总线的读写操作都需要通过对相应的寄存器进行读写来实现。驱动程序需要对这些寄存器进行正确的配置和操作,以实现对EIM总线的控制。 3. 数据传输:驱动程序需要实现数据在EIM总线上的传输。这包括数据的读取和写入,以及相应的时序控制和中断处理等操作。 4. 中断处理:当EIM总线发生中断时,驱动程序需要及时处理。这包括中断触发的条件判断、中断控制的设置和中断服务程序的编写等。 5. 错误处理:在使用EIM总线时可能会遇到一些错误情况,如数据传输错误、中断处理错误等。驱动程序需要具备一定的错误处理能力,以保证系统的正常运行和稳定性。 总之,imx6的EIM总线驱动是为了对该处理器上的EIM总线进行控制而开发的一种软件程序。它通过对硬件的初始化、对寄存器的操作、数据传输和中断处理等,实现了对EIM总线的控制和数据传输功能。这样就能够让开发人员在使用imx6处理器时,方便地进行对外部设备的读写操作。

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

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值