Lines Matching refs:kobj

757 static ssize_t dev_attr_show(struct kobject *kobj, struct attribute *attr,  in dev_attr_show()  argument
761 struct device *dev = kobj_to_dev(kobj); in dev_attr_show()
773 static ssize_t dev_attr_store(struct kobject *kobj, struct attribute *attr, in dev_attr_store() argument
777 struct device *dev = kobj_to_dev(kobj); in dev_attr_store()
870 static void device_release(struct kobject *kobj) in device_release() argument
872 struct device *dev = kobj_to_dev(kobj); in device_release()
899 static const void *device_namespace(struct kobject *kobj) in device_namespace() argument
901 struct device *dev = kobj_to_dev(kobj); in device_namespace()
910 static void device_get_ownership(struct kobject *kobj, kuid_t *uid, kgid_t *gid) in device_get_ownership() argument
912 struct device *dev = kobj_to_dev(kobj); in device_get_ownership()
926 static int dev_uevent_filter(struct kset *kset, struct kobject *kobj) in dev_uevent_filter() argument
928 struct kobj_type *ktype = get_ktype(kobj); in dev_uevent_filter()
931 struct device *dev = kobj_to_dev(kobj); in dev_uevent_filter()
940 static const char *dev_uevent_name(struct kset *kset, struct kobject *kobj) in dev_uevent_name() argument
942 struct device *dev = kobj_to_dev(kobj); in dev_uevent_name()
951 static int dev_uevent(struct kset *kset, struct kobject *kobj, in dev_uevent() argument
954 struct device *dev = kobj_to_dev(kobj); in dev_uevent()
1035 top_kobj = &dev->kobj; in uevent_show()
1047 if (!kset->uevent_ops->filter(kset, &dev->kobj)) in uevent_show()
1055 retval = kset->uevent_ops->uevent(kset, &dev->kobj, env); in uevent_show()
1070 if (kobject_synth_uevent(&dev->kobj, buf, count)) in uevent_store()
1110 return sysfs_create_groups(&dev->kobj, groups); in device_add_groups()
1117 sysfs_remove_groups(&dev->kobj, groups); in device_remove_groups()
1137 sysfs_remove_group(&dev->kobj, group); in devm_attr_group_remove()
1146 sysfs_remove_groups(&dev->kobj, groups); in devm_attr_groups_remove()
1169 error = sysfs_create_group(&dev->kobj, grp); in devm_device_add_group()
1222 error = sysfs_create_groups(&dev->kobj, groups); in devm_device_add_groups()
1330 list_move_tail(&deva->kobj.entry, &devb->kobj.entry); in devices_kset_move_before()
1346 list_move(&deva->kobj.entry, &devb->kobj.entry); in devices_kset_move_after()
1360 list_move_tail(&dev->kobj.entry, &devices_kset->list); in devices_kset_move_last()
1381 error = sysfs_create_file(&dev->kobj, &attr->attr); in device_create_file()
1397 sysfs_remove_file(&dev->kobj, &attr->attr); in device_remove_file()
1412 return sysfs_remove_file_self(&dev->kobj, &attr->attr); in device_remove_file_self()
1428 error = sysfs_create_bin_file(&dev->kobj, attr); in device_create_bin_file()
1442 sysfs_remove_bin_file(&dev->kobj, attr); in device_remove_bin_file()
1484 dev->kobj.kset = devices_kset; in device_initialize()
1485 kobject_init(&dev->kobj, &device_ktype); in device_initialize()
1508 &devices_kset->kobj); in virtual_device_parent()
1514 struct kobject kobj; member
1518 #define to_class_dir(obj) container_of(obj, struct class_dir, kobj)
1520 static void class_dir_release(struct kobject *kobj) in class_dir_release() argument
1522 struct class_dir *dir = to_class_dir(kobj); in class_dir_release()
1527 struct kobj_ns_type_operations *class_dir_child_ns_type(struct kobject *kobj) in class_dir_child_ns_type() argument
1529 struct class_dir *dir = to_class_dir(kobj); in class_dir_child_ns_type()
1550 kobject_init(&dir->kobj, &class_dir_ktype); in class_dir_create_and_add()
1552 dir->kobj.kset = &class->p->glue_dirs; in class_dir_create_and_add()
1554 retval = kobject_add(&dir->kobj, parent_kobj, "%s", class->name); in class_dir_create_and_add()
1556 kobject_put(&dir->kobj); in class_dir_create_and_add()
1559 return &dir->kobj; in class_dir_create_and_add()
1568 struct kobject *kobj = NULL; in get_device_parent() local
1576 return &parent->kobj; in get_device_parent()
1577 return &block_class.p->subsys.kobj; in get_device_parent()
1589 return &parent->kobj; in get_device_parent()
1591 parent_kobj = &parent->kobj; in get_device_parent()
1599 kobj = kobject_get(k); in get_device_parent()
1603 if (kobj) { in get_device_parent()
1605 return kobj; in get_device_parent()
1617 return &dev->bus->dev_root->kobj; in get_device_parent()
1620 return &parent->kobj; in get_device_parent()
1624 static inline bool live_in_glue_dir(struct kobject *kobj, in live_in_glue_dir() argument
1627 if (!kobj || !dev->class || in live_in_glue_dir()
1628 kobj->kset != &dev->class->p->glue_dirs) in live_in_glue_dir()
1635 return dev->kobj.parent; in get_glue_dir()
1662 error = sysfs_create_link(&dev->kobj, of_node_kobj(of_node), "of_node"); in device_add_class_symlinks()
1671 error = sysfs_create_link(&dev->kobj, in device_add_class_symlinks()
1672 &dev->class->p->subsys.kobj, in device_add_class_symlinks()
1678 error = sysfs_create_link(&dev->kobj, &dev->parent->kobj, in device_add_class_symlinks()
1691 error = sysfs_create_link(&dev->class->p->subsys.kobj, in device_add_class_symlinks()
1692 &dev->kobj, dev_name(dev)); in device_add_class_symlinks()
1699 sysfs_remove_link(&dev->kobj, "device"); in device_add_class_symlinks()
1702 sysfs_remove_link(&dev->kobj, "subsystem"); in device_add_class_symlinks()
1704 sysfs_remove_link(&dev->kobj, "of_node"); in device_add_class_symlinks()
1711 sysfs_remove_link(&dev->kobj, "of_node"); in device_remove_class_symlinks()
1717 sysfs_remove_link(&dev->kobj, "device"); in device_remove_class_symlinks()
1718 sysfs_remove_link(&dev->kobj, "subsystem"); in device_remove_class_symlinks()
1723 sysfs_delete_link(&dev->class->p->subsys.kobj, &dev->kobj, dev_name(dev)); in device_remove_class_symlinks()
1737 err = kobject_set_name_vargs(&dev->kobj, fmt, vargs); in dev_set_name()
1756 struct kobject *kobj; in device_to_dev_kobj() local
1759 kobj = dev->class->dev_kobj; in device_to_dev_kobj()
1761 kobj = sysfs_dev_char_kobj; in device_to_dev_kobj()
1763 return kobj; in device_to_dev_kobj()
1768 struct kobject *kobj = device_to_dev_kobj(dev); in device_create_sys_dev_entry() local
1772 if (kobj) { in device_create_sys_dev_entry()
1774 error = sysfs_create_link(kobj, &dev->kobj, devt_str); in device_create_sys_dev_entry()
1782 struct kobject *kobj = device_to_dev_kobj(dev); in device_remove_sys_dev_entry() local
1785 if (kobj) { in device_remove_sys_dev_entry()
1787 sysfs_remove_link(kobj, devt_str); in device_remove_sys_dev_entry()
1828 struct kobject *kobj; in device_add() local
1865 kobj = get_device_parent(dev, parent); in device_add()
1866 if (IS_ERR(kobj)) { in device_add()
1867 error = PTR_ERR(kobj); in device_add()
1870 if (kobj) in device_add()
1871 dev->kobj.parent = kobj; in device_add()
1879 error = kobject_add(&dev->kobj, dev->kobj.parent, NULL); in device_add()
1926 kobject_uevent(&dev->kobj, KOBJ_ADD); in device_add()
1963 kobject_uevent(&dev->kobj, KOBJ_REMOVE); in device_add()
1965 kobject_del(&dev->kobj); in device_add()
2012 return dev ? kobj_to_dev(kobject_get(&dev->kobj)) : NULL; in get_device()
2024 kobject_put(&dev->kobj); in put_device()
2091 kobject_uevent(&dev->kobj, KOBJ_REMOVE); in device_del()
2093 kobject_del(&dev->kobj); in device_del()
2350 kobject_uevent(&dev->kobj, KOBJ_OFFLINE); in device_offline()
2379 kobject_uevent(&dev->kobj, KOBJ_ONLINE); in device_online()
2455 err = sysfs_create_link(&root->dev.kobj, &mk->kobj, "module"); in __root_device_register()
2480 sysfs_remove_link(&root->dev.kobj, "module"); in root_device_unregister()
2519 retval = kobject_set_name_vargs(&dev->kobj, fmt, args); in device_create_groups_vargs()
2717 struct kobject *kobj = &dev->kobj; in device_rename() local
2734 error = sysfs_rename_link_ns(&dev->class->p->subsys.kobj, in device_rename()
2735 kobj, old_device_name, in device_rename()
2736 new_name, kobject_namespace(kobj)); in device_rename()
2741 error = kobject_rename(kobj, new_name); in device_rename()
2761 sysfs_remove_link(&dev->kobj, "device"); in device_move_class_links()
2763 error = sysfs_create_link(&dev->kobj, &new_parent->kobj, in device_move_class_links()
2796 error = kobject_move(&dev->kobj, new_parent_kobj); in device_move()
2817 if (!kobject_move(&dev->kobj, &old_parent->kobj)) { in device_move()
2875 kobj.entry); in device_shutdown()
2888 list_del_init(&dev->kobj.entry); in device_shutdown()