修改板驱动程序
大多数系统芯片 (SoC) 板都依赖于明确枚举的硬件资源,而不是工作站、服务器或笔记本电脑上常见的 ACPI 等发现机制。
有关示例,请参阅 display-engine.cc。大多数设备需要结合使用以下各项:
- MMIO 区域
- 针对 vsync、热插拔事件(通常通过 GPIO)等操作的中断。例如,AMLogic 显示控制器具有 RDMA 引擎和具有自己的中断的捕获接口。
- BTI:Zircon 的基元,用于将虚拟内存固定到物理地址以进行硬件交互。
- GPIO 引脚,例如用于打开/关闭有线 LCD 面板。
- 电源资源,用于开启控制器电源并选择工作电压。
- I2C 桥接器,例如用于控制 DSI 到 HDMI 输出转换器的桥接器。
- DSI 访问,因为 DSI 支持通常是由内核提供的单独驱动程序。
- Sysmem 堆,以便客户端可以分配设备可访问的内存。
枚举所有这些资源后,请调用 AddComposite
以作为一个单元公开它们。设备管理器将查找可绑定到此复合设备的驱动程序,并加载相应的显示驱动程序。
此更改是针对 VIM3 板驱动程序修改的完整示例。
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2024-07-16。
[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["没有我需要的信息","missingTheInformationINeed","thumb-down"],["太复杂/步骤太多","tooComplicatedTooManySteps","thumb-down"],["内容需要更新","outOfDate","thumb-down"],["翻译问题","translationIssue","thumb-down"],["示例/代码问题","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2024-07-16。"],[],[]]