/* * Subsystem file operations. * These operations allow subsystems to have files that can be * read/written. */ static ssize_t subsys_attr_show(struct kobject * kobj, struct attribute * attr, char * page) { struct kset *kset = to_kset(kobj); struct subsys_attribute * sattr = to_sattr(attr); ssize_t ret = -EIO; if (sattr->show) ret = sattr->show(kset, page); return ret; }
/** * Subsystem file operations. * These operations allow subsystems to have files that can be * read/written. */ static ssize_t subsys_attr_show(struct kobject * kobj, struct attribute * attr, char * page) { struct subsystem * s = to_subsys(kobj); struct subsys_attribute * sattr = to_sattr(attr); ssize_t ret = 0; if (sattr->show) ret = sattr->show(s,page); return ret; }
static ssize_t subsys_attr_store(struct kobject * kobj, struct attribute * attr, const char * page, size_t count) { struct kset *kset = to_kset(kobj); struct subsys_attribute * sattr = to_sattr(attr); ssize_t ret = -EIO; if (sattr->store) ret = sattr->store(kset, page, count); return ret; }
static ssize_t subsys_attr_store(struct kobject * kobj, struct attribute * attr, const char * page, size_t count) { struct subsystem * s = to_subsys(kobj); struct subsys_attribute * sattr = to_sattr(attr); ssize_t ret = 0; if (sattr->store) ret = sattr->store(s,page,count); return ret; }