msm8909 打开debug串口操作

device/qcom/msm8909/BoardConfig.mk
BOARD_KERNEL_CMDLINE := console=ttyHSL0,115200,n8 androidboot.console=ttyHSL0 androidboot.hardware=qcom user_debug=31 msm_rtb.filter=0x3F ehci-hcd.park=3 androidboot.bootdevice=7824900.sdhci



/kenrel/arch/arm/config
msm8909-1gb-E8909-defconfig
msm8909-1gb-E8909-perf_defconfig

添加:
CONFIG_SERIAL_MSM_HSL=y
CONFIG_SERIAL_MSM_HSL_CONSOLE=y
CONFIG_SERIAL_MSM_SMD=y

/LK/project/msm8909.mk
DEFINES += WITH_DEBUG_UART=1

修改后如果无效,删除out重新编译

### 关于 `msm_geni_serial` 驱动程序的技术资料和使用教程 #### 获取驱动源码 对于希望深入研究或修改 `msm_geni_serial` 的开发者来说,获取其源代码是最基础的工作。该驱动作为Linux内核的一部分,在官方Linux仓库中可以找到完整的实现。 可以通过克隆 Linux 内核 Git 仓库来获得最新版本的驱动: ```bash git clone https://github.com/torvalds/linux.git cd linux ``` 在下载后的文件夹里,通过路径 `/drivers/tty/serial/msm_serial.c` 可以定位到具体的驱动文件[^1]。 #### 编译与安装 编译整个内核并不是必需的操作;如果仅需构建单个模块,则可以在配置好环境之后执行如下命令: ```bash make oldconfig make M=drivers/tty/serial/ sudo insmod drivers/tty/serial/msm_serial.ko ``` 上述指令会重新编译并加载 `msm_geni_serial` 模块至当前运行环境中[^2]。 #### 测试与验证 为了测试新编译好的驱动是否正常工作,可利用简单的读写操作来进行初步检验。例如,创建一个名为 `test.sh` 的脚本文件,并赋予执行权限后运行它: ```bash #!/bin/bash echo "Testing serial port..." stty -F /dev/ttyMSM0 ispeed 9600 ospeed 9600 cs8 -cstopb cread clocal echo "Hello MSM Serial!" > /dev/ttyMSM0 cat </dev/ttyMSM0 & sleep 1 kill %1 ``` 这段脚本设置波特率为9600bps并向指定串口发送消息字符串,随后尝试接收来自同一接口的数据流[^3]。 #### 调试技巧 当遇到问题时,启用调试模式有助于快速定位错误原因。对于某些特定平台上的 UART 设备而言,可能支持特殊的调试选项,比如回环测试功能: ```bash echo 1 >/sys/kernel/debug/msm_serial_hsl/loopback.0 ``` 此命令开启了一个硬件级别的自检机制,使得发出的信息能够立即被接收到,从而方便排查通信链路中存在的潜在缺陷[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ma浩然

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值