I.MX6Q(TQIMX6Q/TQE9)学习笔记——新版BSP之UART移植

我们在内核启动时候已经配置系统了UART,但是tqimx6q这块开发板上引出了imx6q的5路TTL接口,其中,uart1和uart2转成232接口,本文将配置这5路Uart接口。

DTS配置

由于内核中已经有imx6q的uart控制器驱动,因此,我们只需要配置各端口的pinctrl即可。根据tqimx6q的原理图,我们对我们的DTS作如下修改:

...

&uart1 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_uart1_2>;
	status = "okay";
};

&uart2 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_uart2_3>;
	status = "okay";
};

&uart3 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_uart3_2>;
	status = "okay";
};

&uart4 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_uart4_1>;
	status = "okay";
};

&uart5 {
	pintctrl-names = "default";
	pinctrl-0 = <&pinctrl_uart5_1>;
	status = "okay";
};

...

&iomuxc {
	pinctrl-names = "default";

	uart1 {
		pinctrl_uart1_2: uart1grp-2 {
			fsl,pins = <
				MX6QDL_PAD_SD3_DAT7__UART1_TX_DATA 0x1b0b1
				MX6QDL_PAD_SD3_DAT6__UART1_RX_DATA 0x1b0b1
				MX6QDL_PAD_EIM_D20__UART1_RTS_B 0x1b0b1
				MX6QDL_PAD_EIM_D19__UART1_CTS_B 0x1b0b1
			>;
		};
	};

	uart2 {
		pinctrl_uart2_3: uart2grp-3 {
			fsl,pins = <
				MX6QDL_PAD_EIM_D26__UART2_TX_DATA   0x1b0b1
				MX6QDL_PAD_EIM_D27__UART2_RX_DATA   0x1b0b1
				MX6QDL_PAD_EIM_D28__UART2_CTS_B 0x1b0b1
				MX6QDL_PAD_EIM_D29__UART2_RTS_B 0x1b0b1
			>;
		};
	};

	uart3 {
		pinctrl_uart3_2: uart3grp-2 {
			fsl,pins = <
				MX6QDL_PAD_EIM_D24__UART3_TX_DATA 0x1b0b1
				MX6QDL_PAD_EIM_D25__UART3_RX_DATA 0x1b0b1
			>;
		};
	};

	uart5 {
		pinctrl_uart5_1: uart5grp-1 {
			fsl,pins = <
				MX6QDL_PAD_KEY_COL1__UART5_TX_DATA 0x1b0b1
				MX6QDL_PAD_KEY_ROW1__UART5_RX_DATA 0x1b0b1
			>;
		};
	};
};

修改之后重新编译并烧写DTB,新的DTB可以正常启动内核。

测试方法

测试串口的方式有很多,可以编写专门的测试程序来测试,这方面的资料网上可以找到很多,我这里就不举例了。本文使用了偷懒的方式,在uboot中将bootargs临时修改为如下内容:

setenv bootargs 'noinitrd console=ttymxc1,115200 root=/dev/mmcblk0p1 rw rootfstype=ext4 init=/linuxrc'
然后执行boot指令,这时,连接到uart2的串口终端就可以看到内核的启动log了,当然也可以正常的进入linux控制台。其它三个串口都是TTL方式的,我手头上没有这种电平转换模块,就不测试了。

至此,tqimx6q的全部串口都移植好了。有任何疑问可以留言讨论。





本文作者:girlkoo

本文链接:http://blog.csdn.net/girlkoo/article/details/45608249

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值