惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
WordPress大学
WordPress大学
云风的 BLOG
云风的 BLOG
Stack Overflow Blog
Stack Overflow Blog
MongoDB | Blog
MongoDB | Blog
腾讯CDC
V
V2EX
Martin Fowler
Martin Fowler
A
About on SuperTechFans
大猫的无限游戏
大猫的无限游戏
Blog — PlanetScale
Blog — PlanetScale
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
酷 壳 – CoolShell
酷 壳 – CoolShell
C
Check Point Blog
博客园 - 【当耐特】
Cisco Talos Blog
Cisco Talos Blog
The Hacker News
The Hacker News
K
Kaspersky official blog
Security Latest
Security Latest
H
Help Net Security
博客园_首页
美团技术团队
Spread Privacy
Spread Privacy
博客园 - 司徒正美
Hugging Face - Blog
Hugging Face - Blog
S
SegmentFault 最新的问题
G
Google Developers Blog
NISL@THU
NISL@THU
爱范儿
爱范儿
I
Intezer
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
阮一峰的网络日志
阮一峰的网络日志
N
News and Events Feed by Topic
P
Privacy International News Feed
Application and Cybersecurity Blog
Application and Cybersecurity Blog
S
Security @ Cisco Blogs
Schneier on Security
Schneier on Security
雷峰网
雷峰网
人人都是产品经理
人人都是产品经理
V
Vulnerabilities – Threatpost
W
WeLiveSecurity
P
Palo Alto Networks Blog
G
GRAHAM CLULEY
Hacker News: Ask HN
Hacker News: Ask HN
I
InfoQ
The Cloudflare Blog
F
Full Disclosure
SecWiki News
SecWiki News
宝玉的分享
宝玉的分享
N
Netflix TechBlog - Medium

博客园 - 邗影

关于音频PA结构腔体 球面渲染 关于linux和shi脚本常用的通配符 关于fread读不满一块和读不满count的返回值 如何去掉merge UBI的覆盖写和擦除 debug比release程序启动的快 关于CPU占用优先级的调整 关于蜂鸣器发声 麦序与声源定位 关于squashfs压缩挂载 软连接生成 线程退出未定义行为 linux文件查找 C语言弱函数 数据传输报错port unreachable D3D11绘制三角形 关于延迟测试 v4l2检测 关于数据库的性能 流媒体小记包含一些面试问题 v4l2视频采集 流媒体ZLM配置vscode远程开发 关于SPS中的帧率问题 Linux编译问题 SSl冲突问题 D3D初始化窗口显示 关于线程池
DTSI 多个模块共用同一个 GPIO 引脚冲突 问题汇总
邗影 · 2026-05-18 · via 博客园 - 邗影

一、核心本质

同一个物理 GPIO 引脚,在设备树里被两个及以上驱动 / 模块同时申请、配置、使用。


二、直接出现的问题

1. 驱动注册失败、内核报错

  • 先加载的驱动成功占用 GPIO,后加载驱动调用gpiod_get()/gpio_request()直接失败
  • 打印 gpio already requested,模块初始化直接挂掉,功能失效

2. 电平互相篡改,逻辑完全错乱

  • A 模块拉高电平,B 模块误以为是自身触发信号
  • 按键、中断、指示灯、使能脚、复位脚互相干扰
  • 按键乱触发、指示灯乱闪、外设随机启停

3. 方向模式冲突(输入 / 输出打架)

  • 一个配为输出推高低电平
  • 另一个配为输入检测电平
  • 输出强拉电平,输入采样永远不准;甚至 IO 口电平僵持,灌电流异常

4. 中断冲突最严重

  • 双方都配置该 GPIO 为中断触发(上升沿 / 下降沿 / 双边沿)
  • 中断号重复注册,内核中断紊乱、丢失中断、频繁误触发
  • 严重直接系统卡顿、死机、内核 panic

5. 电气硬件损坏风险

  • 两个模块同时设为输出:一个拉高、一个拉低 → IO 口对拉灌大电流
  • 长期使用烧毁 GPIO 引脚、主控 IO 域电路

6. 休眠 / 唤醒逻辑异常

  • 休眠时一方拉电平唤醒,另一方误唤醒整机
  • 低功耗失效,待机功耗飙升

7. 设备树编译 & 合并隐性冲突

  • 多个 dts/dtsi 重复定义gpios = <&gpioxxx ...>
  • 覆盖原有配置,实际生效的只有最后一个配置,前期配置全部失效

三、常见冲突场景

  1. 按键 GPIO 同时被按键驱动 + 唤醒驱动使用
  2. 电源使能脚 同时被功耗管理 + 外设驱动配置
  3. LED 指示灯 被两个业务模块控制
  4. 串口 / 外设复位脚 多模块共用复位控制
  5. 外部中断输入脚 多个传感器共用同一中断 IO