2020-03-02 13:33:35

by Yue Haibing

[permalink] [raw]
Subject: [PATCH -next] iio:ad7797: Use correct attribute_group

It seems ad7797_attribute_group should be used in ad7797_info,
according to commit ("iio:ad7793: Add support for the ad7796 and ad7797").

Fixes: fd1a8b912841 ("iio:ad7793: Add support for the ad7796 and ad7797")
Signed-off-by: YueHaibing <[email protected]>
---
drivers/iio/adc/ad7793.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/iio/adc/ad7793.c b/drivers/iio/adc/ad7793.c
index b747db9..e5691e3 100644
--- a/drivers/iio/adc/ad7793.c
+++ b/drivers/iio/adc/ad7793.c
@@ -542,7 +542,7 @@ static const struct iio_info ad7797_info = {
.read_raw = &ad7793_read_raw,
.write_raw = &ad7793_write_raw,
.write_raw_get_fmt = &ad7793_write_raw_get_fmt,
- .attrs = &ad7793_attribute_group,
+ .attrs = &ad7797_attribute_group,
.validate_trigger = ad_sd_validate_trigger,
};

--
2.7.4



2020-03-04 06:37:43

by Alexandru Ardelean

[permalink] [raw]
Subject: Re: [PATCH -next] iio:ad7797: Use correct attribute_group

On Mon, 2020-03-02 at 21:32 +0800, YueHaibing wrote:
> [External]
>
> It seems ad7797_attribute_group should be used in ad7797_info,
> according to commit ("iio:ad7793: Add support for the ad7796 and ad7797").

While the change looks good at first, I am thinking that this might introduce
another issue while fixing this one.

It looks like the ad7797_attributes[] array may also require the
&iio_dev_attr_in_m_in_scale_available.dev_attr.attr attribute as well.
It looks like the available scales should be printed for AD7997 as well.

That being said, this patch is fine as-is.
But it would require a patch [before-this-patch] to fix the ad7797_attributes
array.

Something like this:

static struct attribute *ad7797_attributes[] = {
&iio_const_attr_sampling_frequency_available_ad7797.dev_attr.attr,
+ &iio_dev_attr_in_m_in_scale_available.dev_attr.attr,
NULL
};

I'm hoping I'm right about this one. I sometimes don't notice things too well.

>
> Fixes: fd1a8b912841 ("iio:ad7793: Add support for the ad7796 and ad7797")
> Signed-off-by: YueHaibing <[email protected]>
> ---
> drivers/iio/adc/ad7793.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/iio/adc/ad7793.c b/drivers/iio/adc/ad7793.c
> index b747db9..e5691e3 100644
> --- a/drivers/iio/adc/ad7793.c
> +++ b/drivers/iio/adc/ad7793.c
> @@ -542,7 +542,7 @@ static const struct iio_info ad7797_info = {
> .read_raw = &ad7793_read_raw,
> .write_raw = &ad7793_write_raw,
> .write_raw_get_fmt = &ad7793_write_raw_get_fmt,
> - .attrs = &ad7793_attribute_group,
> + .attrs = &ad7797_attribute_group,
> .validate_trigger = ad_sd_validate_trigger,
> };
>

2020-03-07 13:11:42

by Jonathan Cameron

[permalink] [raw]
Subject: Re: [PATCH -next] iio:ad7797: Use correct attribute_group

On Wed, 4 Mar 2020 06:35:28 +0000
"Ardelean, Alexandru" <[email protected]> wrote:

> On Mon, 2020-03-02 at 21:32 +0800, YueHaibing wrote:
> > [External]
> >
> > It seems ad7797_attribute_group should be used in ad7797_info,
> > according to commit ("iio:ad7793: Add support for the ad7796 and ad7797").
>
> While the change looks good at first, I am thinking that this might introduce
> another issue while fixing this one.
>
> It looks like the ad7797_attributes[] array may also require the
> &iio_dev_attr_in_m_in_scale_available.dev_attr.attr attribute as well.
> It looks like the available scales should be printed for AD7997 as well.
>
> That being said, this patch is fine as-is.
> But it would require a patch [before-this-patch] to fix the ad7797_attributes
> array.
>
> Something like this:
>
> static struct attribute *ad7797_attributes[] = {
> &iio_const_attr_sampling_frequency_available_ad7797.dev_attr.attr,
> + &iio_dev_attr_in_m_in_scale_available.dev_attr.attr,
> NULL
> };
>
> I'm hoping I'm right about this one. I sometimes don't notice things too well.

Agreed. Should have that addition as well. If not we'll successfully fix
one issue but drop a valid interface at the same time...

Thanks,

Jonathan

>
> >
> > Fixes: fd1a8b912841 ("iio:ad7793: Add support for the ad7796 and ad7797")
> > Signed-off-by: YueHaibing <[email protected]>
> > ---
> > drivers/iio/adc/ad7793.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/iio/adc/ad7793.c b/drivers/iio/adc/ad7793.c
> > index b747db9..e5691e3 100644
> > --- a/drivers/iio/adc/ad7793.c
> > +++ b/drivers/iio/adc/ad7793.c
> > @@ -542,7 +542,7 @@ static const struct iio_info ad7797_info = {
> > .read_raw = &ad7793_read_raw,
> > .write_raw = &ad7793_write_raw,
> > .write_raw_get_fmt = &ad7793_write_raw_get_fmt,
> > - .attrs = &ad7793_attribute_group,
> > + .attrs = &ad7797_attribute_group,
> > .validate_trigger = ad_sd_validate_trigger,
> > };
> >

2020-03-09 02:18:33

by Yue Haibing

[permalink] [raw]
Subject: Re: [PATCH -next] iio:ad7797: Use correct attribute_group

On 2020/3/7 21:10, Jonathan Cameron wrote:
> On Wed, 4 Mar 2020 06:35:28 +0000
> "Ardelean, Alexandru" <[email protected]> wrote:
>
>> On Mon, 2020-03-02 at 21:32 +0800, YueHaibing wrote:
>>> [External]
>>>
>>> It seems ad7797_attribute_group should be used in ad7797_info,
>>> according to commit ("iio:ad7793: Add support for the ad7796 and ad7797").
>>
>> While the change looks good at first, I am thinking that this might introduce
>> another issue while fixing this one.
>>
>> It looks like the ad7797_attributes[] array may also require the
>> &iio_dev_attr_in_m_in_scale_available.dev_attr.attr attribute as well.
>> It looks like the available scales should be printed for AD7997 as well.
>>
>> That being said, this patch is fine as-is.
>> But it would require a patch [before-this-patch] to fix the ad7797_attributes
>> array.
>>
>> Something like this:
>>
>> static struct attribute *ad7797_attributes[] = {
>> &iio_const_attr_sampling_frequency_available_ad7797.dev_attr.attr,
>> + &iio_dev_attr_in_m_in_scale_available.dev_attr.attr,
>> NULL
>> };
>>
>> I'm hoping I'm right about this one. I sometimes don't notice things too well.
>
> Agreed. Should have that addition as well. If not we'll successfully fix
> one issue but drop a valid interface at the same time...
>

Ok, will send v2 with this addtion, thanks!

> Thanks,
>
> Jonathan
>
>>
>>>
>>> Fixes: fd1a8b912841 ("iio:ad7793: Add support for the ad7796 and ad7797")
>>> Signed-off-by: YueHaibing <[email protected]>
>>> ---
>>> drivers/iio/adc/ad7793.c | 2 +-
>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/drivers/iio/adc/ad7793.c b/drivers/iio/adc/ad7793.c
>>> index b747db9..e5691e3 100644
>>> --- a/drivers/iio/adc/ad7793.c
>>> +++ b/drivers/iio/adc/ad7793.c
>>> @@ -542,7 +542,7 @@ static const struct iio_info ad7797_info = {
>>> .read_raw = &ad7793_read_raw,
>>> .write_raw = &ad7793_write_raw,
>>> .write_raw_get_fmt = &ad7793_write_raw_get_fmt,
>>> - .attrs = &ad7793_attribute_group,
>>> + .attrs = &ad7797_attribute_group,
>>> .validate_trigger = ad_sd_validate_trigger,
>>> };
>>>
>
>
> .
>

2020-03-09 10:36:23

by Lars-Peter Clausen

[permalink] [raw]
Subject: Re: [PATCH -next] iio:ad7797: Use correct attribute_group

On 3/4/20 7:35 AM, Ardelean, Alexandru wrote:
> On Mon, 2020-03-02 at 21:32 +0800, YueHaibing wrote:
>> [External]
>>
>> It seems ad7797_attribute_group should be used in ad7797_info,
>> according to commit ("iio:ad7793: Add support for the ad7796 and ad7797").
> While the change looks good at first, I am thinking that this might introduce
> another issue while fixing this one.
>
> It looks like the ad7797_attributes[] array may also require the
> &iio_dev_attr_in_m_in_scale_available.dev_attr.attr attribute as well.
> It looks like the available scales should be printed for AD7997 as well.
>
> That being said, this patch is fine as-is.
> But it would require a patch [before-this-patch] to fix the ad7797_attributes
> array.
>
> Something like this:
>
> static struct attribute *ad7797_attributes[] = {
> &iio_const_attr_sampling_frequency_available_ad7797.dev_attr.attr,
> + &iio_dev_attr_in_m_in_scale_available.dev_attr.attr,
> NULL
> };
>
> I'm hoping I'm right about this one. I sometimes don't notice things too well.
>
Scale is fixed for the ad7796 and not programmable. Usually we only have
the scale attribute itself in that case and no scale_available attribute.

- Lars

2020-03-09 10:36:33

by Lars-Peter Clausen

[permalink] [raw]
Subject: Re: [PATCH -next] iio:ad7797: Use correct attribute_group

On 3/9/20 2:38 AM, Yuehaibing wrote:
> On 2020/3/7 21:10, Jonathan Cameron wrote:
>> On Wed, 4 Mar 2020 06:35:28 +0000
>> "Ardelean, Alexandru" <[email protected]> wrote:
>>
>>> On Mon, 2020-03-02 at 21:32 +0800, YueHaibing wrote:
>>>> [External]
>>>>
>>>> It seems ad7797_attribute_group should be used in ad7797_info,
>>>> according to commit ("iio:ad7793: Add support for the ad7796 and ad7797").
>>> While the change looks good at first, I am thinking that this might introduce
>>> another issue while fixing this one.
>>>
>>> It looks like the ad7797_attributes[] array may also require the
>>> &iio_dev_attr_in_m_in_scale_available.dev_attr.attr attribute as well.
>>> It looks like the available scales should be printed for AD7997 as well.
>>>
>>> That being said, this patch is fine as-is.
>>> But it would require a patch [before-this-patch] to fix the ad7797_attributes
>>> array.
>>>
>>> Something like this:
>>>
>>> static struct attribute *ad7797_attributes[] = {
>>> &iio_const_attr_sampling_frequency_available_ad7797.dev_attr.attr,
>>> + &iio_dev_attr_in_m_in_scale_available.dev_attr.attr,
>>> NULL
>>> };
>>>
>>> I'm hoping I'm right about this one. I sometimes don't notice things too well.
>> Agreed. Should have that addition as well. If not we'll successfully fix
>> one issue but drop a valid interface at the same time...
>>
> Ok, will send v2 with this addtion, thanks!
>
I believe the original patch is OK the way it was. The part does not
have a programmable gain, hence should not have the scale_available
attribute.

You can add my reviewed by to the original patch.

Reviewed-by: Lars-Peter Clausen <[email protected]>

- Lars

2020-03-10 14:19:32

by Yue Haibing

[permalink] [raw]
Subject: [PATCH v2] iio:ad7797: Use correct attribute_group

It should use ad7797_attribute_group in ad7797_info,
according to commit ("iio:ad7793: Add support for the ad7796 and ad7797").

Scale is fixed for the ad7796 and not programmable, hence
should not have the scale_available attribute.

Fixes: fd1a8b912841 ("iio:ad7793: Add support for the ad7796 and ad7797")
Signed-off-by: YueHaibing <[email protected]>
Reviewed-by: Lars-Peter Clausen <[email protected]>
---
v2: renew log as Lars-Peter's comment

drivers/iio/adc/ad7793.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/iio/adc/ad7793.c b/drivers/iio/adc/ad7793.c
index b747db9..e5691e3 100644
--- a/drivers/iio/adc/ad7793.c
+++ b/drivers/iio/adc/ad7793.c
@@ -542,7 +542,7 @@ static const struct iio_info ad7797_info = {
.read_raw = &ad7793_read_raw,
.write_raw = &ad7793_write_raw,
.write_raw_get_fmt = &ad7793_write_raw_get_fmt,
- .attrs = &ad7793_attribute_group,
+ .attrs = &ad7797_attribute_group,
.validate_trigger = ad_sd_validate_trigger,
};

--
2.7.4


2020-03-15 09:18:17

by Jonathan Cameron

[permalink] [raw]
Subject: Re: [PATCH v2] iio:ad7797: Use correct attribute_group

On Tue, 10 Mar 2020 22:16:54 +0800
YueHaibing <[email protected]> wrote:

> It should use ad7797_attribute_group in ad7797_info,
> according to commit ("iio:ad7793: Add support for the ad7796 and ad7797").
>
> Scale is fixed for the ad7796 and not programmable, hence
> should not have the scale_available attribute.
>
> Fixes: fd1a8b912841 ("iio:ad7793: Add support for the ad7796 and ad7797")
> Signed-off-by: YueHaibing <[email protected]>
> Reviewed-by: Lars-Peter Clausen <[email protected]>
Thanks,

I've queued this up. Won't push out just yet as I'm waiting for
Greg to pick up a pull request after which I'd like to fast forward
the fixes branch.

Thanks,

Jonathan

> ---
> v2: renew log as Lars-Peter's comment
>
> drivers/iio/adc/ad7793.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/iio/adc/ad7793.c b/drivers/iio/adc/ad7793.c
> index b747db9..e5691e3 100644
> --- a/drivers/iio/adc/ad7793.c
> +++ b/drivers/iio/adc/ad7793.c
> @@ -542,7 +542,7 @@ static const struct iio_info ad7797_info = {
> .read_raw = &ad7793_read_raw,
> .write_raw = &ad7793_write_raw,
> .write_raw_get_fmt = &ad7793_write_raw_get_fmt,
> - .attrs = &ad7793_attribute_group,
> + .attrs = &ad7797_attribute_group,
> .validate_trigger = ad_sd_validate_trigger,
> };
>