i.MX6/i.MX7 EIM总线驱动-异步通信-非DMA编码实现

在上一章介绍了i.MX6/i.MX7 EIM总线异步通信的时序。在了解了该总线传输过程时的时序变化后,这一章我们将介绍如果通过编码的方式来实现。

同样,我们先介绍我们一下我们的环境:

Linux版本:Linux3.14.52    Linux4.9.88   这两个版本都经过实际测试,确定传输是没有问题的。

硬件:i.MX6 (i.MX7也验证过,这里以i.MX6为实例进行介绍)

在Linux3.xx.xx以后的版本里面,引入了设备树的机制。该机制替代了以前驱动里面device的角色。我们这里的编码实现也是基于设备树机制实现的。

对于设备树不熟悉的朋友,我后期会拿一章简单介绍一下设备树的相关知识。

那么下面我们开始介绍实际的编码:

1、配置设备树:

在对应的设备树文件里面添加EIM相关信息的初始化,我这里修改的文件是:

arch/arm/boot/dts/imx6qdl-sabresd.dtsi

在如下节点里面添加如下信息:
&iomuxc {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_hog>;

	imx6qdl-sabresd {
    ……//其他节点信息
        pinctrl_weim_cs0_1:weim_cs0_1{
		 	fsl,pins = <
		 		//CS
		 		MX6QDL_PAD_EIM_CS0__EIM_CS0_B		0xb0b1
		 	 >;		
		};

		pinctrl_weim_fpga_1:weim_fpga_1{
		 	fsl,pins = <
		 		//RW-OE
		 		MX6QDL_PAD_EIM_RW__EIM_RW			0xb0b1
		 		MX6QDL_P
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 8
    评论
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

monkey_llll

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值