diff mbox series

[8/9] iio: core: move @flags from struct iio_dev to struct iio_dev_opaque

Message ID 20210426174911.397061-9-jic23@kernel.org (mailing list archive)
State New, archived
Headers show
Series iio: Move more things from iio_dev to iio_dev_opaque | expand

Commit Message

Jonathan Cameron April 26, 2021, 5:49 p.m. UTC
From: Jonathan Cameron <Jonathan.Cameron@huawei.com>

No reason any driver should ever need access to this field, so hide it.

Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
---
 drivers/iio/industrialio-core.c | 6 +++---
 include/linux/iio/iio-opaque.h  | 2 ++
 include/linux/iio/iio.h         | 2 --
 3 files changed, 5 insertions(+), 5 deletions(-)

Comments

Alexandru Ardelean April 27, 2021, 8:07 a.m. UTC | #1
On Mon, Apr 26, 2021 at 8:50 PM Jonathan Cameron <jic23@kernel.org> wrote:
>
> From: Jonathan Cameron <Jonathan.Cameron@huawei.com>
>
> No reason any driver should ever need access to this field, so hide it.
>


Reviewed-by: Alexandru Ardelean <ardeleanalex@gmail.com>


> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
> ---
>  drivers/iio/industrialio-core.c | 6 +++---
>  include/linux/iio/iio-opaque.h  | 2 ++
>  include/linux/iio/iio.h         | 2 --
>  3 files changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/iio/industrialio-core.c b/drivers/iio/industrialio-core.c
> index 6fbe29f0b1de..4a4c02fea152 100644
> --- a/drivers/iio/industrialio-core.c
> +++ b/drivers/iio/industrialio-core.c
> @@ -1720,7 +1720,7 @@ static int iio_chrdev_open(struct inode *inode, struct file *filp)
>         struct iio_dev *indio_dev = &iio_dev_opaque->indio_dev;
>         struct iio_dev_buffer_pair *ib;
>
> -       if (test_and_set_bit(IIO_BUSY_BIT_POS, &indio_dev->flags))
> +       if (test_and_set_bit(IIO_BUSY_BIT_POS, &iio_dev_opaque->flags))
>                 return -EBUSY;
>
>         iio_device_get(indio_dev);
> @@ -1728,7 +1728,7 @@ static int iio_chrdev_open(struct inode *inode, struct file *filp)
>         ib = kmalloc(sizeof(*ib), GFP_KERNEL);
>         if (!ib) {
>                 iio_device_put(indio_dev);
> -               clear_bit(IIO_BUSY_BIT_POS, &indio_dev->flags);
> +               clear_bit(IIO_BUSY_BIT_POS, &iio_dev_opaque->flags);
>                 return -ENOMEM;
>         }
>
> @@ -1754,7 +1754,7 @@ static int iio_chrdev_release(struct inode *inode, struct file *filp)
>                 container_of(inode->i_cdev, struct iio_dev_opaque, chrdev);
>         struct iio_dev *indio_dev = &iio_dev_opaque->indio_dev;
>         kfree(ib);
> -       clear_bit(IIO_BUSY_BIT_POS, &indio_dev->flags);
> +       clear_bit(IIO_BUSY_BIT_POS, &iio_dev_opaque->flags);
>         iio_device_put(indio_dev);
>
>         return 0;
> diff --git a/include/linux/iio/iio-opaque.h b/include/linux/iio/iio-opaque.h
> index 2f8ef5d15a66..d7c3036861ac 100644
> --- a/include/linux/iio/iio-opaque.h
> +++ b/include/linux/iio/iio-opaque.h
> @@ -25,6 +25,7 @@
>   * @legacy_buffer_group:       attribute group for legacy buffer attributes group
>   * @scan_index_timestamp:      cache of the index to the timestamp
>   * @chrdev:                    associated character device
> + * @flags:                     file ops related flags including busy flag.
>   * @debugfs_dentry:            device specific debugfs dentry
>   * @cached_reg_addr:           cached register address for debugfs reads
>   * @read_buf:                  read buffer to be used for the initial reg read
> @@ -51,6 +52,7 @@ struct iio_dev_opaque {
>
>         unsigned int                    scan_index_timestamp;
>         struct cdev                     chrdev;
> +       unsigned long                   flags;
>
>  #if defined(CONFIG_DEBUG_FS)
>         struct dentry                   *debugfs_dentry;
> diff --git a/include/linux/iio/iio.h b/include/linux/iio/iio.h
> index 586e2dc4fbf3..ed0537015eee 100644
> --- a/include/linux/iio/iio.h
> +++ b/include/linux/iio/iio.h
> @@ -512,7 +512,6 @@ struct iio_buffer_setup_ops {
>   * @clock_id:          [INTERN] timestamping clock posix identifier
>   * @setup_ops:         [DRIVER] callbacks to call before and after buffer
>   *                     enable/disable
> - * @flags:             [INTERN] file ops related flags including busy flag.
>   * @priv:              [DRIVER] reference to driver's private information
>   *                     **MUST** be accessed **ONLY** via iio_priv() helper
>   */
> @@ -542,7 +541,6 @@ struct iio_dev {
>         clockid_t                       clock_id;
>         const struct iio_buffer_setup_ops       *setup_ops;
>
> -       unsigned long                   flags;
>         void                            *priv;
>  };
>
> --
> 2.31.1
>
diff mbox series

Patch

diff --git a/drivers/iio/industrialio-core.c b/drivers/iio/industrialio-core.c
index 6fbe29f0b1de..4a4c02fea152 100644
--- a/drivers/iio/industrialio-core.c
+++ b/drivers/iio/industrialio-core.c
@@ -1720,7 +1720,7 @@  static int iio_chrdev_open(struct inode *inode, struct file *filp)
 	struct iio_dev *indio_dev = &iio_dev_opaque->indio_dev;
 	struct iio_dev_buffer_pair *ib;
 
-	if (test_and_set_bit(IIO_BUSY_BIT_POS, &indio_dev->flags))
+	if (test_and_set_bit(IIO_BUSY_BIT_POS, &iio_dev_opaque->flags))
 		return -EBUSY;
 
 	iio_device_get(indio_dev);
@@ -1728,7 +1728,7 @@  static int iio_chrdev_open(struct inode *inode, struct file *filp)
 	ib = kmalloc(sizeof(*ib), GFP_KERNEL);
 	if (!ib) {
 		iio_device_put(indio_dev);
-		clear_bit(IIO_BUSY_BIT_POS, &indio_dev->flags);
+		clear_bit(IIO_BUSY_BIT_POS, &iio_dev_opaque->flags);
 		return -ENOMEM;
 	}
 
@@ -1754,7 +1754,7 @@  static int iio_chrdev_release(struct inode *inode, struct file *filp)
 		container_of(inode->i_cdev, struct iio_dev_opaque, chrdev);
 	struct iio_dev *indio_dev = &iio_dev_opaque->indio_dev;
 	kfree(ib);
-	clear_bit(IIO_BUSY_BIT_POS, &indio_dev->flags);
+	clear_bit(IIO_BUSY_BIT_POS, &iio_dev_opaque->flags);
 	iio_device_put(indio_dev);
 
 	return 0;
diff --git a/include/linux/iio/iio-opaque.h b/include/linux/iio/iio-opaque.h
index 2f8ef5d15a66..d7c3036861ac 100644
--- a/include/linux/iio/iio-opaque.h
+++ b/include/linux/iio/iio-opaque.h
@@ -25,6 +25,7 @@ 
  * @legacy_buffer_group:	attribute group for legacy buffer attributes group
  * @scan_index_timestamp:	cache of the index to the timestamp
  * @chrdev:			associated character device
+ * @flags:			file ops related flags including busy flag.
  * @debugfs_dentry:		device specific debugfs dentry
  * @cached_reg_addr:		cached register address for debugfs reads
  * @read_buf:			read buffer to be used for the initial reg read
@@ -51,6 +52,7 @@  struct iio_dev_opaque {
 
 	unsigned int			scan_index_timestamp;
 	struct cdev			chrdev;
+	unsigned long			flags;
 
 #if defined(CONFIG_DEBUG_FS)
 	struct dentry			*debugfs_dentry;
diff --git a/include/linux/iio/iio.h b/include/linux/iio/iio.h
index 586e2dc4fbf3..ed0537015eee 100644
--- a/include/linux/iio/iio.h
+++ b/include/linux/iio/iio.h
@@ -512,7 +512,6 @@  struct iio_buffer_setup_ops {
  * @clock_id:		[INTERN] timestamping clock posix identifier
  * @setup_ops:		[DRIVER] callbacks to call before and after buffer
  *			enable/disable
- * @flags:		[INTERN] file ops related flags including busy flag.
  * @priv:		[DRIVER] reference to driver's private information
  *			**MUST** be accessed **ONLY** via iio_priv() helper
  */
@@ -542,7 +541,6 @@  struct iio_dev {
 	clockid_t			clock_id;
 	const struct iio_buffer_setup_ops	*setup_ops;
 
-	unsigned long			flags;
 	void				*priv;
 };