Lines Matching refs:iio_dev_opaque
181 struct iio_dev_opaque *iio_dev_opaque = to_iio_dev_opaque(indio_dev); in iio_device_id() local
183 return iio_dev_opaque->id; in iio_device_id()
224 struct iio_dev_opaque *iio_dev_opaque = to_iio_dev_opaque(indio_dev); in iio_get_debugfs_dentry() local
225 return iio_dev_opaque->debugfs_dentry; in iio_get_debugfs_dentry()
263 struct iio_dev_opaque *iio_dev_opaque = to_iio_dev_opaque(indio_dev); in iio_device_set_clock() local
264 const struct iio_event_interface *ev_int = iio_dev_opaque->event_interface; in iio_device_set_clock()
274 iio_dev_opaque->clock_id = clock_id; in iio_device_set_clock()
287 struct iio_dev_opaque *iio_dev_opaque = to_iio_dev_opaque(indio_dev); in iio_device_get_clock() local
289 return iio_dev_opaque->clock_id; in iio_device_get_clock()
386 struct iio_dev_opaque *iio_dev_opaque = to_iio_dev_opaque(indio_dev); in iio_debugfs_read_reg() local
392 iio_dev_opaque->read_buf, in iio_debugfs_read_reg()
393 iio_dev_opaque->read_buf_len); in iio_debugfs_read_reg()
396 iio_dev_opaque->cached_reg_addr, in iio_debugfs_read_reg()
403 iio_dev_opaque->read_buf_len = snprintf(iio_dev_opaque->read_buf, in iio_debugfs_read_reg()
404 sizeof(iio_dev_opaque->read_buf), in iio_debugfs_read_reg()
408 iio_dev_opaque->read_buf, in iio_debugfs_read_reg()
409 iio_dev_opaque->read_buf_len); in iio_debugfs_read_reg()
416 struct iio_dev_opaque *iio_dev_opaque = to_iio_dev_opaque(indio_dev); in iio_debugfs_write_reg() local
431 iio_dev_opaque->cached_reg_addr = reg; in iio_debugfs_write_reg()
434 iio_dev_opaque->cached_reg_addr = reg; in iio_debugfs_write_reg()
458 struct iio_dev_opaque *iio_dev_opaque = to_iio_dev_opaque(indio_dev); in iio_device_unregister_debugfs() local
459 debugfs_remove_recursive(iio_dev_opaque->debugfs_dentry); in iio_device_unregister_debugfs()
464 struct iio_dev_opaque *iio_dev_opaque; in iio_device_register_debugfs() local
472 iio_dev_opaque = to_iio_dev_opaque(indio_dev); in iio_device_register_debugfs()
474 iio_dev_opaque->debugfs_dentry = in iio_device_register_debugfs()
479 iio_dev_opaque->debugfs_dentry, indio_dev, in iio_device_register_debugfs()
1186 struct iio_dev_opaque *iio_dev_opaque = to_iio_dev_opaque(indio_dev); in iio_device_add_channel_label() local
1200 &iio_dev_opaque->channel_attr_list); in iio_device_add_channel_label()
1212 struct iio_dev_opaque *iio_dev_opaque = to_iio_dev_opaque(indio_dev); in iio_device_add_info_mask_type() local
1226 &iio_dev_opaque->channel_attr_list); in iio_device_add_info_mask_type()
1242 struct iio_dev_opaque *iio_dev_opaque = to_iio_dev_opaque(indio_dev); in iio_device_add_info_mask_type_avail() local
1263 &iio_dev_opaque->channel_attr_list); in iio_device_add_info_mask_type_avail()
1278 struct iio_dev_opaque *iio_dev_opaque = to_iio_dev_opaque(indio_dev); in iio_device_add_channel_sysfs() local
1360 &iio_dev_opaque->channel_attr_list); in iio_device_add_channel_sysfs()
1493 struct iio_dev_opaque *iio_dev_opaque = to_iio_dev_opaque(indio_dev); in iio_device_register_sysfs_group() local
1494 const struct attribute_group **new, **old = iio_dev_opaque->groups; in iio_device_register_sysfs_group()
1495 unsigned int cnt = iio_dev_opaque->groupcounter; in iio_device_register_sysfs_group()
1501 new[iio_dev_opaque->groupcounter++] = group; in iio_device_register_sysfs_group()
1502 new[iio_dev_opaque->groupcounter] = NULL; in iio_device_register_sysfs_group()
1504 iio_dev_opaque->groups = new; in iio_device_register_sysfs_group()
1514 struct iio_dev_opaque *iio_dev_opaque = to_iio_dev_opaque(indio_dev); in iio_device_register_sysfs() local
1544 if (iio_dev_opaque->event_interface) in iio_device_register_sysfs()
1554 iio_dev_opaque->chan_attr_group.attrs = in iio_device_register_sysfs()
1556 sizeof(iio_dev_opaque->chan_attr_group.attrs[0]), in iio_device_register_sysfs()
1558 if (iio_dev_opaque->chan_attr_group.attrs == NULL) { in iio_device_register_sysfs()
1564 memcpy(iio_dev_opaque->chan_attr_group.attrs, in iio_device_register_sysfs()
1566 sizeof(iio_dev_opaque->chan_attr_group.attrs[0]) in iio_device_register_sysfs()
1568 iio_dev_opaque->chan_attr_group.is_visible = in iio_device_register_sysfs()
1573 list_for_each_entry(p, &iio_dev_opaque->channel_attr_list, l) in iio_device_register_sysfs()
1574 iio_dev_opaque->chan_attr_group.attrs[attrn++] = &p->dev_attr.attr; in iio_device_register_sysfs()
1576 iio_dev_opaque->chan_attr_group.attrs[attrn++] = &dev_attr_name.attr; in iio_device_register_sysfs()
1578 iio_dev_opaque->chan_attr_group.attrs[attrn++] = &dev_attr_label.attr; in iio_device_register_sysfs()
1580 iio_dev_opaque->chan_attr_group.attrs[attrn++] = clk; in iio_device_register_sysfs()
1583 &iio_dev_opaque->chan_attr_group); in iio_device_register_sysfs()
1590 iio_free_chan_devattr_list(&iio_dev_opaque->channel_attr_list); in iio_device_register_sysfs()
1597 struct iio_dev_opaque *iio_dev_opaque = to_iio_dev_opaque(indio_dev); in iio_device_unregister_sysfs() local
1599 iio_free_chan_devattr_list(&iio_dev_opaque->channel_attr_list); in iio_device_unregister_sysfs()
1600 kfree(iio_dev_opaque->chan_attr_group.attrs); in iio_device_unregister_sysfs()
1601 iio_dev_opaque->chan_attr_group.attrs = NULL; in iio_device_unregister_sysfs()
1602 kfree(iio_dev_opaque->groups); in iio_device_unregister_sysfs()
1603 iio_dev_opaque->groups = NULL; in iio_device_unregister_sysfs()
1609 struct iio_dev_opaque *iio_dev_opaque = to_iio_dev_opaque(indio_dev); in iio_dev_release() local
1618 ida_simple_remove(&iio_ida, iio_dev_opaque->id); in iio_dev_release()
1619 kfree(iio_dev_opaque); in iio_dev_release()
1634 struct iio_dev_opaque *iio_dev_opaque; in iio_device_alloc() local
1638 alloc_size = sizeof(struct iio_dev_opaque); in iio_device_alloc()
1644 iio_dev_opaque = kzalloc(alloc_size, GFP_KERNEL); in iio_device_alloc()
1645 if (!iio_dev_opaque) in iio_device_alloc()
1648 indio_dev = &iio_dev_opaque->indio_dev; in iio_device_alloc()
1649 indio_dev->priv = (char *)iio_dev_opaque + in iio_device_alloc()
1650 ALIGN(sizeof(struct iio_dev_opaque), IIO_ALIGN); in iio_device_alloc()
1658 mutex_init(&iio_dev_opaque->info_exist_lock); in iio_device_alloc()
1659 INIT_LIST_HEAD(&iio_dev_opaque->channel_attr_list); in iio_device_alloc()
1661 iio_dev_opaque->id = ida_simple_get(&iio_ida, 0, 0, GFP_KERNEL); in iio_device_alloc()
1662 if (iio_dev_opaque->id < 0) { in iio_device_alloc()
1665 kfree(iio_dev_opaque); in iio_device_alloc()
1669 if (dev_set_name(&indio_dev->dev, "iio:device%d", iio_dev_opaque->id)) { in iio_device_alloc()
1670 ida_simple_remove(&iio_ida, iio_dev_opaque->id); in iio_device_alloc()
1671 kfree(iio_dev_opaque); in iio_device_alloc()
1675 INIT_LIST_HEAD(&iio_dev_opaque->buffer_list); in iio_device_alloc()
1676 INIT_LIST_HEAD(&iio_dev_opaque->ioctl_handlers); in iio_device_alloc()
1737 struct iio_dev_opaque *iio_dev_opaque = in iio_chrdev_open() local
1738 container_of(inode->i_cdev, struct iio_dev_opaque, chrdev); in iio_chrdev_open()
1739 struct iio_dev *indio_dev = &iio_dev_opaque->indio_dev; in iio_chrdev_open()
1742 if (test_and_set_bit(IIO_BUSY_BIT_POS, &iio_dev_opaque->flags)) in iio_chrdev_open()
1750 clear_bit(IIO_BUSY_BIT_POS, &iio_dev_opaque->flags); in iio_chrdev_open()
1772 struct iio_dev_opaque *iio_dev_opaque = in iio_chrdev_release() local
1773 container_of(inode->i_cdev, struct iio_dev_opaque, chrdev); in iio_chrdev_release()
1774 struct iio_dev *indio_dev = &iio_dev_opaque->indio_dev; in iio_chrdev_release()
1776 clear_bit(IIO_BUSY_BIT_POS, &iio_dev_opaque->flags); in iio_chrdev_release()
1785 struct iio_dev_opaque *iio_dev_opaque = to_iio_dev_opaque(indio_dev); in iio_device_ioctl_handler_register() local
1787 list_add_tail(&h->entry, &iio_dev_opaque->ioctl_handlers); in iio_device_ioctl_handler_register()
1799 struct iio_dev_opaque *iio_dev_opaque = to_iio_dev_opaque(indio_dev); in iio_ioctl() local
1803 mutex_lock(&iio_dev_opaque->info_exist_lock); in iio_ioctl()
1813 list_for_each_entry(h, &iio_dev_opaque->ioctl_handlers, entry) { in iio_ioctl()
1823 mutex_unlock(&iio_dev_opaque->info_exist_lock); in iio_ioctl()
1894 struct iio_dev_opaque *iio_dev_opaque = to_iio_dev_opaque(indio_dev); in __iio_device_register() local
1901 iio_dev_opaque->driver_module = this_mod; in __iio_device_register()
1946 if (iio_dev_opaque->attached_buffers_cnt) in __iio_device_register()
1947 cdev_init(&iio_dev_opaque->chrdev, &iio_buffer_fileops); in __iio_device_register()
1948 else if (iio_dev_opaque->event_interface) in __iio_device_register()
1949 cdev_init(&iio_dev_opaque->chrdev, &iio_event_fileops); in __iio_device_register()
1951 if (iio_dev_opaque->attached_buffers_cnt || iio_dev_opaque->event_interface) { in __iio_device_register()
1952 indio_dev->dev.devt = MKDEV(MAJOR(iio_devt), iio_dev_opaque->id); in __iio_device_register()
1953 iio_dev_opaque->chrdev.owner = this_mod; in __iio_device_register()
1957 indio_dev->dev.groups = iio_dev_opaque->groups; in __iio_device_register()
1959 ret = cdev_device_add(&iio_dev_opaque->chrdev, &indio_dev->dev); in __iio_device_register()
1983 struct iio_dev_opaque *iio_dev_opaque = to_iio_dev_opaque(indio_dev); in iio_device_unregister() local
1985 cdev_device_del(&iio_dev_opaque->chrdev, &indio_dev->dev); in iio_device_unregister()
1987 mutex_lock(&iio_dev_opaque->info_exist_lock); in iio_device_unregister()
1998 mutex_unlock(&iio_dev_opaque->info_exist_lock); in iio_device_unregister()