static intdevice_platform_notifystruct device dev enum kobject_action action int ret; ret = acpi_platform_notifydev action; if ret return ret; ret = software_node_notifydev action; if ret return ret
/定义一个函数,返回值为整型,参数为设备和kobject_action枚举类型的变量/ static int device_platform_notify(struct device *dev, enum kobject_action action) { /定义一个整型变量ret并初始化为0/ int ret;
/*调用acpi_platform_notify函数,传入设备和action参数,并将返回值赋值给ret*/
ret = acpi_platform_notify(dev, action);
/*如果ret不为0,则直接返回ret*/
if (ret)
return ret;
/*调用software_node_notify函数,传入设备和action参数,并将返回值赋值给ret*/
ret = software_node_notify(dev, action);
/*如果ret不为0,则直接返回ret*/
if (ret)
return ret;
/*如果platform_notify不为空且action为KOBJ_ADD,则调用platform_notify函数,传入设备参数*/
if (platform_notify && action == KOBJ_ADD)
platform_notify(dev);
/*如果platform_notify_remove不为空且action为KOBJ_REMOVE,则调用platform_notify_remove函数,传入设备参数*/
else if (platform_notify_remove && action == KOBJ_REMOVE)
platform_notify_remove(dev);
/*返回0*/
return 0;
}
原文地址: https://www.cveoy.top/t/topic/bgvB 著作权归作者所有。请勿转载和采集!