[高通SDM450][Android9.0]debug串口转通用串口

news/2024/11/16 4:31:02/

文章目录

    • 开发平台基本信息
    • 问题描述
    • 解决方法
      • debug口转普通串口补丁

开发平台基本信息

芯片: SDM450
版本: Android 9.0
kernel: msm-4.9

问题描述

由于硬件起初设计的时候,没有预留通用串口,而usb转串口又不是特别稳定,经常会挂死,虽然可以通过上、下电U口节点去恢复串口功能,但是,效果仍然不如直接使用串口好。刚好,在设备上有一个debug串口,平时是驱动调试功能用的,业务就提出将debug串口转为通用串口使用,解决u转串不稳定的问题。

解决方法

debug口转普通串口补丁

diff --git a/device/qcom/msm8953_64/BoardConfig.mk b/device/qcom/msm8953_64/BoardConfig.mk
index 61d3034..676ea13 100755
--- a/device/qcom/msm8953_64/BoardConfig.mk
+++ b/device/qcom/msm8953_64/BoardConfig.mk
@@ -182,8 +182,10 @@ BOARD_VENDOR_KERNEL_MODULES := \endif-ifeq ($(strip $(TARGET_KERNEL_VERSION)), 4.9)
-    BOARD_KERNEL_CMDLINE := console=ttyHSL0,115200,n8 androidboot.console=ttyHSL0 androidboot.hardware=qcom msm_rtb.filter=0x237 ehci-hcd.park=3 lpm_levels.sleep_disabled=1 androidboot.bootdevice=7824900.sdhci earlycon=msm_serial_dm,0x78af000 firmware_class.path=/vendor/firmware_mnt/image androidboot.usbconfigfs=true loop.max_part=7
+ifeq ($(strip $(TARGET_KERNEL_VERSION))_$(D2_NoNeed_DebugSerial), 4.9_true)
+    BOARD_KERNEL_CMDLINE := user_debug=31 androidboot.hardware=qcom msm_rtb.filter=0x237 ehci-hcd.park=3 lpm_levels.sleep_disabled=1 androidboot.bootdevice=7824900.sdhci earlycon=msm_serial_dm,0x78af000 firmware_class.path=/vendor/firmware_mnt/image androidboot.usbconfigfs=true loop.max_part=7
+else ifeq ($(strip $(TARGET_KERNEL_VERSION)), 4.9) 
+       BOARD_KERNEL_CMDLINE := console=ttyHSL0,115200,n8 androidboot.console=ttyHSL0 androidboot.hardware=qcom msm_rtb.filter=0x237 ehci-hcd.park=3 lpm_levels.sleep_disabled=1 androidboot.bootdevice=7824900.sdhci earlycon=msm_serial_dm,0x78af000 firmware_class.path=/vendor/firmware_mnt/image androidboot.usbconfigfs=true loop.max_part=7else ifeq ($(strip $(TARGET_KERNEL_VERSION)), 3.18)BOARD_KERNEL_CMDLINE := console=ttyHSL0,115200,n8 androidboot.console=ttyHSL0 androidboot.hardware=qcom msm_rtb.filter=0x237 ehci-hcd.park=3 lpm_levels.sleep_disabled=1 androidboot.bootdevice=7824900.sdhci earlycon=msm_hsl_uart,0x78af000 firmware_class.path=/vendor/firmware_mnt/image loop.max_part=7endifdiff --git a/kernel/msm-4.9/arch/arm64/configs/msm8953-telpo-D2-perf_defconfig b/kernel/msm-4.9/arch/arm64/configs/msm8953-telpo-D2-perf_defconfig
index 7e0a3d0..1540b98 100755
--- a/kernel/msm-4.9/arch/arm64/configs/msm8953-telpo-D2-perf_defconfig
+++ b/kernel/msm-4.9/arch/arm64/configs/msm8953-telpo-D2-perf_defconfig
@@ -339,8 +339,8 @@ CONFIG_INPUT_UINPUT=y# CONFIG_LEGACY_PTYS is not set# CONFIG_DEVMEM is not set# CONFIG_DEVKMEM is not set
-CONFIG_SERIAL_MSM_HS=y
-CONFIG_SERIAL_MSM_SMD=y
+#CONFIG_SERIAL_MSM_HS=y
+#CONFIG_SERIAL_MSM_SMD=yCONFIG_DIAG_CHAR=yCONFIG_DIAG_USES_SMD=yCONFIG_HW_RANDOM=y
@@ -701,9 +701,9 @@ CONFIG_USB_SERIAL_PL2303=yCONFIG_USB_SERIAL_FTDI_SIO=yCONFIG_SERIAL_MSM_HSL=y
-CONFIG_SERIAL_MSM_HSL_CONSOLE=y
+#CONFIG_SERIAL_MSM_HSL_CONSOLE=yCONFIG_SERIAL_MSM=y
-CONFIG_SERIAL_MSM_CONSOLE=y
+#CONFIG_SERIAL_MSM_CONSOLE=yCONFIG_SENSORS=yCONFIG_SWITCH=y
diff --git a/kernel/msm-4.9/arch/arm64/configs/msm8953-telpo-D2_defconfig b/kernel/msm-4.9/arch/arm64/configs/msm8953-telpo-D2_defconfig
index 8a468b8..b113cc4 100755
--- a/kernel/msm-4.9/arch/arm64/configs/msm8953-telpo-D2_defconfig
+++ b/kernel/msm-4.9/arch/arm64/configs/msm8953-telpo-D2_defconfig
@@ -347,9 +347,9 @@ CONFIG_INPUT_UINPUT=y# CONFIG_DEVMEM is not set# CONFIG_DEVKMEM is not setCONFIG_SERIAL_MSM=y
-CONFIG_SERIAL_MSM_CONSOLE=y
+#CONFIG_SERIAL_MSM_CONSOLE=yCONFIG_SERIAL_MSM_HS=y
-CONFIG_SERIAL_MSM_SMD=y
+#CONFIG_SERIAL_MSM_SMD=yCONFIG_DIAG_CHAR=yCONFIG_DIAG_USES_SMD=yCONFIG_HW_RANDOM=y
@@ -767,7 +767,7 @@ CONFIG_USB_SERIAL_PL2303=yCONFIG_USB_SERIAL_FTDI_SIO=yCONFIG_SERIAL_MSM_HSL=y
-CONFIG_SERIAL_MSM_HSL_CONSOLE=y
+#CONFIG_SERIAL_MSM_HSL_CONSOLE=yCONFIG_SENSORS=yCONFIG_SWITCH=y

注:修改完之后进行调试,用AT指令工具打开串口,发生指令没有接收到返回,原因是波特率设置为115200,改为9600就能正常收到返回数据了。


http://www.ppmy.cn/news/724918.html

相关文章

[高通SDM450][Android9.0]同一套代码兼容不同的emmc

文章目录 开发平台基本信息问题描述解决方法1. 如何计算userdata分区大小2. 兼容不同规格的emmc3.MTP模式显示异常 开发平台基本信息 芯片: SDM450 版本: Android 9.0 kernel: msm-4.9 问题描述 一款设备,经常会出现搭配不同内存的情况,比如216跟464&…

高通SDM450平台配置SPI0接口

一、查看原理图,需要将GPIO_0、GPIO_1、GPIO_2、GPIO_3配置成SPI接口 二、查看安SDM450平台的数据手册,文档号:80-PC173-1,查看相关的手册可知,GPIO_0、GPIO_1、GPIO_2、GPIO_3可以复用成SPI1, 三、查看高通的文档号&a…

高通SDM450平台的LDO 输出与电压调节

开始之前,首先我们要知道什么是LDO?有什么作用?LDO调试需要调哪些? 什么是LDO,有什么作用? LDO为 低压线性稳压器,高通平台有多路LDO电压输出,以SDM450 为例 共有 LDO1~LDO23 23路。用于给外设提供电源。 LDO需要调什么? LDO的调试主要 有 打开和关闭 LDO电压 和 …

GO中file文件操作

一、File文件操作 首先,file类是在os包中的,封装了底层的文件描述符和相关信息,同时封装了Read和Write的实现。 1、FileInfo接口 FileInfo接口中定义了File信息相关的方法。 type FileInfo interface {Name() string // base name …

C#(四十六)之基于流的文件操作(FileStream)

FileStream类属性和方法 属性 CanRead 指示当前文件流是否支持读取 CanWrite 指示当前文件流是否支持写入 CanSeek 指示当前文件流是否支持查找 IsAsync FileStream是同步打开还是异步打开 Length 流的长度(字节数) CanTimeOut 当前文件流是否可以…

【github】Github内置Visual Studio Code

打开内置VScode 1s.dev https://github1s.dev 对比 原始 https://github.com/vuejs/vue 内置Vscode https://github1s.dev/vuejs/vue

【RPC】—Protobuf入门

Protobuf入门 ⭐⭐⭐⭐⭐⭐ Github主页👉https://github.com/A-BigTree 笔记链接👉https://github.com/A-BigTree/Code_Learning ⭐⭐⭐⭐⭐⭐ Spring专栏👉https://blog.csdn.net/weixin_53580595/category_12279588.html SpringMVC专栏&a…

二叉树刷题总结

题单: 一,相同的树 题目: 给你两棵二叉树的根节点 p 和 q ,编写一个函数来检验这两棵树是否相同。 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。 题目接口: /*** Defin…