MSM8953 Android 9.0 打开uart串口

目录

MSM8953 Android 9.0 打开uart6串口


msm8953 从硬件规格书中最多是支持4个串口,即除了打印串口外,另外还有3个串口可供系统使用,

本文以调试中打开uart6串口为例说明。

修改步骤如下:

1. 通过硬件资料确认设备树dtsi的修改

基地址:

中断号:

跟进硬件资源修改msm8953.dtsi配置文件

	blsp2_serial1: serial@7af0000 {
		compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
		reg = <0x7af0000 0x200>;
		interrupts = <0 307 0>;
		clocks = <&clock_gcc clk_gcc_blsp2_uart2_apps_clk>,
			<&clock_gcc clk_gcc_blsp2_ahb_clk>;
		clock-names = "core", "iface";
		pinctrl-names = "default","sleep";
		pinctrl-0 = <&uart6_active>;
		pinctrl-1 = <&uart6_sleep>;
		status = "ok";
	};

注意串口6也可以用作SPI的功能。

2.修改pinctrl配置:

			uart6_active: uart6_active {
				mux {
					pins = "gpio20", "gpio21";
					function = "blsp_uart6";
				};

				config {
					pins = "gpio20", "gpio21";
					drive-strength = <2>;
					bias-disable;
				};
			};

			uart6_sleep: uart6_sleep {
				mux {
					pins = "gpio20", "gpio21";
					function = "blsp_uart6";
				};

				config {
					pins = "gpio20", "gpio21";
					drive-strength = <2>;
					bias-pull-down;
				};
			};

3.串口驱动修改:

msm_serial.c增加一组串口配置

	{
		.uart = {
			.iotype = UPIO_MEM,
			.ops = &msm_uart_pops,
			.flags = UPF_BOOT_AUTOCONF,
			.fifosize = 64,
			.line = 3,
		},
	},

4.烧录验证:

[    1.233020] 78b0000.serial: ttyHSL2 at MMIO 0x78b0000 (irq = 68, base_baud = 1200000) is a MSM
[    1.233731] msm_serial 7af0000.serial: msm_serial: detected port #3
[    1.233766] msm_serial 7af0000.serial: uartclk = 19200000
[    1.233818] 7af0000.serial: ttyHSL3 at MMIO 0x7af0000 (irq = 69, base_baud = 1200000) is a MSM

启动代码看到有新的串口节点加载,说明已修改成功。

 

文章图片来源:

https://blog.youkuaiyun.com/xuecz1230/article/details/78672662

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值