首页 头条 财经 产业 跨境 时尚 物流 直播 优品 English
首页 / 数字经济 / 正文

由内核统一管理platform_driver_register优势明显

来源:
编辑:电经淘讯
时间:2023-08-27

      相对于USB、PCI、I2C、SPI等物理总线来说,platform总线是一种虚拟、抽象出来的总线,实际中并不存在这样的总线。那为什么需要platform总线呢?其实是Linux设备驱动模型为了保持设备驱动的统一性而虚拟出来的总线。因为对于usb设备、i2c设备、pci设备、spi设备等等,他们与cpu的通信都是直接挂在相应的总线下面与我们的cpu进行数据交互的,但是在我们的嵌入式系统当中,并不是所有的设备都能够归属于这些常见的总线,在嵌入式系统里面,SoC系统中集成的独立的外设控制器、挂接在SoC内存空间的外设却不依附与此类总线。所以Linux驱动模型为了保持完整性,将这些设备挂在一条虚拟的总线上(platform总线),而不至于使得有些设备挂在总线上,另一些设备没有挂在总线上。


从Linux2.6内核起,引入一套新的驱动管理和注册机制:platform_device 和 platform_driver。Linux中大部分的设备驱动,都可以使用这套机制,设备用 platform_device表示;驱动用platform_driver 进行注册。
    Linux platform driver机制和传统的device drive机制(即:通过 driver_register 函数进行注册)相比,一个十分明显的优势在于platform机制将设备本身的资源注册进内核,由内核统一管理,在驱动程序中用使用这些资源时,通过platform device提供的标准接口进行申请并使用。

头条聚焦更多
经济视界更多

“男人的衣柜”背后的周建平家族,财富

    在那个电视广告的黄金时代,凭借一句...[详细]

业绩持续亏损、涉嫌财务造假,力源科技

    作为一家上市3年多的水处理公司,力源科...[详细]

热点财经更多
  • CopyRight @ 2013-2024 Reserved CN电商经济网版权所有所涉内容免责声明查阅