工作中遇到一个客户需要通过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>;