首页 > 其他分享 >platform_device_register 和platform_driver_register;有些驱动里没有platform_device_register

platform_device_register 和platform_driver_register;有些驱动里没有platform_device_register

时间:2024-10-22 20:31:48浏览次数:1  
标签:匹配 驱动程序 register platform device 设备

platform_device_register和platform_driver_register是Linux内核中用于注册平台设备和平台驱动程序的函数。

为什么很多驱动里没有platform_device_register
在Linux内核中,不是所有的驱动程序都需要显式调用platform_device_register函数来注册平台设备。这是因为设备驱动程序可以通过其他方式来与平台设备进行匹配和加载,而无需显式地注册设备。

以下是一些常见的情况:

使用设备树自动匹配:在设备树中正确配置设备节点的compatible属性,内核会根据设备树信息自动匹配平台设备和平台驱动程序,并在适当的时候自动加载驱动程序。这种情况下,驱动程序不需要显式调用platform_device_register函数。

静态声明设备:有些平台驱动程序可以通过静态声明设备来与平台设备进行匹配。通过在代码中定义一个静态的platform_device结构体,并使用module_platform_driver宏将平台驱动程序与该设备绑定,内核会自动在驱动程序加载时匹配该设备并进行初始化。这种情况下,驱动程序也不需要显式调用platform_device_register函数。

其他匹配方式:有些驱动程序可能使用其他的匹配方式来与平台设备进行匹配,例如通过总线或其他系统提供的机制进行匹配。在这种情况下,驱动程序也不需要调用platform_device_register函数。

需要注意的是,以上只是一些常见的情况,并不是绝对的规则。根据具体的驱动程序和硬件平台,可能会有不同的加载和匹配机制。因此,在编写驱动程序时,需要仔细查阅相关文档和参考代码,了解驱动程序与设备的匹配和加载方式,以便正确地使用相应的方法。

原文链接:https://blog.csdn.net/RyanLee90/article/details/130706161

标签:匹配,驱动程序,register,platform,device,设备
From: https://www.cnblogs.com/qiynet/p/18493686

相关文章

  • Features of three electronic component platforms: Findchips, JLCPCB, and ICgoodF
    Thecharacteristicsofthreeelectroniccomponentplatforms:Findchips,JLCPCB,andICgoodFindareasfollows:Findchips:Powerfulsearchanddataintegrationfunction.Itcanaggregatedatafrommajordistributors.Userscansearchforinformationonse......
  • Android开发 registerForActivityResult 传值和申请动态权限
    前言  startActivityForResult()被弃用,现在可以通过registerForActivityResult进行Activity之间的传值和获取申请动态权限结果Activity向上传值MainActivitypackagecom.zh.demoimportandroid.content.Intentimportandroid.os.Bundleimportandroid.util.Logimport......
  • IPMI(智能平台管理接口,Intelligent Platform Management Interface)是一种行业标准的接
    IPMI(智能平台管理接口,IntelligentPlatformManagementInterface)是一种行业标准的接口规范,主要用于服务器和计算机系统的管理。它提供了硬件监控和管理功能,使管理员能够远程监控和控制计算机系统。以下是IPMI的一些主要特点和功能:主要特点硬件监控:IPMI能够监控系统的硬件状态......
  • DeviceNet转Profibus DP总线协议转换网关
    一,设备主要功能捷米特JM-DP-DNT网关实现DeviceNet从站设备接入到ProfibusDP网络;也可作为DeviceNet从站,将DeviceNet主站设备接入到Profibus网络。应用广泛:捷米特JM-DP-DNT广泛应用于支持DeviceNet接口的罗克罗尔,欧姆龙,基恩士PLC等主站控制器等等。DeviceNet从站转ProfibusD......
  • Linux驱动开发 platform设备注册详解
    常用的与平台设备注册相关的函数及其作用:1.platform_device_register()功能:用于注册平台设备到内核设备模型中。注册后,设备与相应的驱动程序绑定,驱动的probe函数被调用以进行初始化。函数原型:intplatform_device_register(structplatform_device*pdev);参数:pde......
  • [转]Learn Power Platform Power Apps Dataverse Write a plug-in
    Learn PowerPlatform PowerApps Dataverse Writeaplug-inInthisarticleIPlugininterfacePluginBaseabstractclassServicesyoucanuseinyourcodePuttingitalltogetherShow2moreYoucancreate plug-ins byusingoneofthefollowingmetho......
  • DevEco Studio:HDC(HarmonyOS Device Connector)常见命令
    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(MaoistLearning)➤博客园地址:为敢技术(https://www.cnblogs.com/strengthen/ )➤GitHub地址:https://github.com/strengthen➤原文地址:https://www.cnblogs.com/strengthen/p/......
  • ADI 亚德诺半导体 Analog Devices 产品的应用介绍和物料推荐(一)
    各位电子行业的伙伴们!今天来聊聊ADI亚德诺半导体。ADI可是全球知名的半导体公司哦!它专注于模拟信号处理,在通信、工业、汽车等众多领域都有卓越表现。ADI的产品以高性能著称,在通信领域提供的放大器、数据转换器、射频芯片等,能满足通信系统对信号处理的高要求。在工业领域,其......
  • No space left on device or exceeds fs.inotify.max_user_watches?
     sudosysctl-n-wfs.inotify.max_user_watches="99999999"fs.inotify.max_queued_events:表示调用inotify_init时分配给inotifyinstance中可排队的event的数目的最大值,超出这个值的事件被丢弃,但会触发IN_Q_OVERFLOW事件。fs.inotify.max_user_instances:表示每一个realuse......
  • pyaudio无法使用sudo执行:OSError: [Errno -9996] Invalid input device (no default o
    项目背景在树莓派上通过语音控制ws2812b灯带,使用 pyaudio 作为语音输入,使用 rpi_ws281x 控制灯带的颜色。问题描述目前出现的问题是由于rpi_ws281x使用PWM引脚,需要使用sudo来执行,但是pyaudio使用sudo执行时会报错:OSError:[Errno-9996]Invalidinputdevice(no......