iMX6平台mcp2515驱动调试

iMX6平台mcp2515驱动调试.

版本 日期 作者 内容 状态
1.0.0 2024-05-23 Bepractical 创建文档: 创建文件 未发布

第一步:增加SPI2节点

1. 编写设备树文件,增加ecspi2节点信息

kernel_imx\arch\arm\boot\dts\imx6qdl-sabresd.dtsi

&ecspi2 {
   
	fsl,spi-num-chipselects = <1>;
	cs-gpios = <0>;
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_ecspi2>,<&pinctrl_ecspi2_cs>;
	status = "okay";

	spidevtest: spidevtest@0 {
   
		#address-cells = <1>;
		#size-cells = <1>;
		compatible = "rohm,dh2228fv";
		spi-max-frequency = <20000000>;
		reg = <0>;
	};
};

pinctrl_ecspi2: ecspi2grp {
   
    fsl,pins = <
        MX6QDL_PAD_EIM_OE__ECSPI2_MISO  0x100b1
        MX6QDL_PAD_EIM_CS1__ECSPI2_MOSI 0x100b1
        MX6QDL_PAD_EIM_CS0__ECSPI2_SCLK 0x100b1
    >;
};

pinctrl_ecspi2_cs: ecspi2csgrp  {
   
    fsl,pins = <
        MX6QDL_PAD_EIM_RW__ECSPI2_SS0 0x100b1
    >;
};

2. SPI2引脚与原驱动冲突

  • 删除原驱动中EIM_CS0/GPIO2_IO23/ECSPI2_SCLK引脚配置
  • 删除原驱动中EIM_CS1/GPIO2_IO24/ECSPI2_MOSI引脚配置
  • 删除原驱动中EIM_OE/GPIO2_IO25/ECSPI2_MISO引脚配置
  • 删除原驱动中EIM_RW/GPIO2_IO26/ECSPI2_SS0引脚配置

kernel_imx\drivers\fhsj\gpio\fhsj_utils.c

	// {PIN_UART_SELECT, GPIOF_IN, "UART_SELECT"},
	// {PIN_BFXT, GPIOF_IN, "BFXT"},
	// {PIN_LED_QZQD, GPIOF_INIT_LOW, "LED_QZQD"},
	// {PIN_BEEP_24V_T, GPIOF_INIT_HIGH, "BEEP_24V"},

kernel_imx\arch\arm\boot\dts\imx6qdl-sabresd.dtsi

pinctrl_hog: hoggrp {
   
	fsl,pins = <
		MX6QDL_PAD_NANDF_D0__GPIO2_IO00 0x80000000
		MX6QDL_PAD_NANDF_D1__GPIO2_IO01 0x80000000
		MX6QDL_PAD_NANDF_D2__GPIO2_IO02 0x80000000
		MX6QDL_PAD_NANDF_D3__GPIO2_IO03 0x80000000
		MX6QDL_PAD_EIM_D22__GPIO3_IO22  0x80000000
		// MX6QDL_PAD_EIM_CS1__GPIO2_IO24 0x80000000
		MX6QDL_PAD_EIM_D23__GPIO3_IO23 0x80000000
		MX6QDL_PAD_SD1_CMD__GPIO1_IO18 0x80000000
		MX6QDL_PAD_EIM_D16__GPIO3_IO16 0x80000000
		MX6QDL_PAD_GPIO_9__GPIO1_IO09 	0x80000000
		MX6QDL_PAD_EIM_DA9__GPIO3_IO09 0x80000000
		
		MX6QDL_PAD_NANDF_CS2__GPIO6_IO15 0x80000000
		MX6QDL_PAD_NANDF_CS3__GPIO6_IO16 0x80000000
		
		MX6QDL_PAD_SD3_DAT4__GPIO7_IO01 0x80000000
		MX6QDL_PAD_SD3_DAT5__GPIO7_IO00 0x80000000
		
		MX6QDL_PAD_EIM_A20__GPIO2_IO18	0x1b0b0
		MX6QDL_PAD_EIM_A21__GPIO2_IO17	0x1b0b0
		MX6QDL_PAD_EIM_A22__GPIO2_IO16  0x1b0b0
		MX6QDL_PAD_EIM_A23__GPIO6_IO06  0x1b0b0
		MX6QDL_PAD_EIM_A24__GPIO5_IO04  0x1b0b0
		MX6QDL_PAD_EIM_A25__GPIO5_IO02  0x1b0b0
		MX6QDL_PAD_EIM_D21__GPIO3_IO21  0x1b0b0
		MX6QDL_PAD_EIM_D29__GPIO3_IO29  0x1b0b0
		
		MX6QDL_PAD_EIM_D31__GPIO3_IO31  0x80000000
		MX6QDL_PAD_EIM_EB3__GPIO2_IO31  0x80000000
		
		MX6QDL_PAD_EIM_DA11__GPIO3_IO11 0x80000000
		MX6QDL_PAD_EIM_DA10__GPIO3_IO10 0x80000000
		
		
		MX6QDL_PAD_GPIO_4__GPIO1_IO04    0x1b0b0
		MX6QDL_PAD_SD3_RST__GPIO7_IO08   0x80000000
		MX6QDL_PAD_GPIO_17__GPIO7_IO12   0x1b0b0
		MX6QDL_PAD_GPIO_18__GPIO7_IO13   0x80000000
		MX6QDL_PAD_GPIO_19__GPIO4_IO05   0x80000000
		MX6QDL_PAD_NANDF_CS1__GPIO6_IO14 0x80000000
		MX6QDL_PAD_EIM_D30__GPIO3_IO30   0x80000000
		
		MX6QDL_PAD_NANDF_RB0__GPIO6_IO10 0x80000000
		
		MX6QDL_PAD_NANDF_CLE__GPIO6_IO07 0x80000000
		MX6QDL_PAD_NANDF_WP_B__GPIO6_IO09 0x80000000
		
		MX6QDL_PAD_NANDF_ALE__GPIO6_IO08 0x80000000
		MX6QDL_PAD_EIM_DA12__GPIO3_IO12	 0x80000000
		MX6QDL_PAD_EIM_DA13__GPIO3_IO13  0x80000000
			//add --20200428-zxy
		// MX6QDL_PAD_EIM_OE__GPIO2_IO25   0x80000000
		// MX6QDL_PAD_EIM_RW__GPIO2_IO26     0x80000000
		//add --20200428-zxy
		// MX6QDL_PAD_EIM_CS0__GPIO2_IO23   0x80000000  
		MX6QDL_PAD_EIM_WAIT__GPIO5_IO00  0x80000000  
		MX6QDL_PAD_EIM_EB0__GPIO2_IO28   
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值