• Home
  • Raw
  • Download

Lines Matching refs:devnode

57 	struct cec_devnode *devnode = to_cec_devnode(cd);  in cec_devnode_release()  local
61 clear_bit(devnode->minor, cec_devnode_nums); in cec_devnode_release()
64 cec_delete_adapter(to_cec_adapter(devnode)); in cec_devnode_release()
84 static int __must_check cec_devnode_register(struct cec_devnode *devnode, in cec_devnode_register() argument
102 devnode->minor = minor; in cec_devnode_register()
103 devnode->dev.bus = &cec_bus_type; in cec_devnode_register()
104 devnode->dev.devt = MKDEV(MAJOR(cec_dev_t), minor); in cec_devnode_register()
105 devnode->dev.release = cec_devnode_release; in cec_devnode_register()
106 dev_set_name(&devnode->dev, "cec%d", devnode->minor); in cec_devnode_register()
107 device_initialize(&devnode->dev); in cec_devnode_register()
110 cdev_init(&devnode->cdev, &cec_devnode_fops); in cec_devnode_register()
111 devnode->cdev.owner = owner; in cec_devnode_register()
112 kobject_set_name(&devnode->cdev.kobj, "cec%d", devnode->minor); in cec_devnode_register()
114 devnode->registered = true; in cec_devnode_register()
115 ret = cdev_device_add(&devnode->cdev, &devnode->dev); in cec_devnode_register()
117 devnode->registered = false; in cec_devnode_register()
126 clear_bit(devnode->minor, cec_devnode_nums); in cec_devnode_register()
142 struct cec_devnode *devnode = &adap->devnode; in cec_devnode_unregister() local
145 mutex_lock(&devnode->lock); in cec_devnode_unregister()
148 if (!devnode->registered || devnode->unregistered) { in cec_devnode_unregister()
149 mutex_unlock(&devnode->lock); in cec_devnode_unregister()
152 devnode->registered = false; in cec_devnode_unregister()
153 devnode->unregistered = true; in cec_devnode_unregister()
155 mutex_lock(&devnode->lock_fhs); in cec_devnode_unregister()
156 list_for_each_entry(fh, &devnode->fhs, list) in cec_devnode_unregister()
158 mutex_unlock(&devnode->lock_fhs); in cec_devnode_unregister()
160 mutex_unlock(&devnode->lock); in cec_devnode_unregister()
169 cdev_device_del(&devnode->cdev, &devnode->dev); in cec_devnode_unregister()
170 put_device(&devnode->dev); in cec_devnode_unregister()
261 INIT_LIST_HEAD(&adap->devnode.fhs); in cec_allocate_adapter()
262 mutex_init(&adap->devnode.lock_fhs); in cec_allocate_adapter()
263 mutex_init(&adap->devnode.lock); in cec_allocate_adapter()
318 adap->devnode.dev.parent = parent; in cec_register_adapter()
337 res = cec_devnode_register(&adap->devnode, adap->owner); in cec_register_adapter()
347 dev_set_drvdata(&adap->devnode.dev, adap); in cec_register_adapter()
352 adap->cec_dir = debugfs_create_dir(dev_name(&adap->devnode.dev), in cec_register_adapter()
355 debugfs_create_devm_seqfile(&adap->devnode.dev, "status", adap->cec_dir, in cec_register_adapter()