Android device 注册、添加、管理(3)

/**   * device_pm_add - Add a device to the PM core's list of active devices.   * @dev: Device to add to the list.   */   void device_pm_add(struct device *dev)   {       pr_debug("PM: Adding info for %s:%s\n",            dev->bus ? dev->bus->name : "No Bus",            kobject_name(&dev->kobj));       mutex_lock(&dpm_list_mtx);       if (dev->parent) {           if (dev->parent->power.status >= DPM_SUSPENDING)               dev_warn(dev, "parent %s should not be sleeping\n",                    dev_name(dev->parent));       } else if (transition_started) {           /*           * We refuse to register parentless devices while a PM           * transition is in progress in order to avoid leaving them           * unhandled down the road           */           dev_WARN(dev, "Parentless device registered during a PM transaction\n");       }          list_add_tail(&dev->power.entry, &dpm_list);       mutex_unlock(&dpm_list_mtx);   }  

综上,设备挂到电源管理的函数调用关系是(依次往下调用)

audio_card_init (函数类型包含__init 初始化调用)

platform_device_add

device_add

device_pm_add

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wwzszy.html