From: Dan Carpenter <dan.carpenter@oracle.com>
To: Jeremy Fertic <jeremyfertic@gmail.com>
Cc: devel@driverdev.osuosl.org, Lars-Peter Clausen <lars@metafoo.de>,
Michael Hennerich <Michael.Hennerich@analog.com>,
linux-iio@vger.kernel.org,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
linux-kernel@vger.kernel.org,
Peter Meerwald-Stadler <pmeerw@pmeerw.net>,
Hartmut Knaack <knaack.h@gmx.de>,
Jonathan Cameron <jic23@kernel.org>
Subject: Re: [PATCH 04/11] staging: iio: adt7316: fix handling of dac high resolution option
Date: Fri, 14 Dec 2018 09:26:18 +0300 [thread overview]
Message-ID: <20181214062618.GW3116@kadam> (raw)
In-Reply-To: <20181213220146.GA2496@r2700x.localdomain>
On Thu, Dec 13, 2018 at 03:01:46PM -0700, Jeremy Fertic wrote:
> On Wed, Dec 12, 2018 at 11:23:16AM +0300, Dan Carpenter wrote:
> > On Tue, Dec 11, 2018 at 05:54:56PM -0700, Jeremy Fertic wrote:
> > > @@ -651,10 +649,12 @@ static ssize_t adt7316_store_da_high_resolution(struct device *dev,
> > > u8 config3;
> > > int ret;
> > >
> > > + if (chip->id == ID_ADT7318 || chip->id == ID_ADT7519)
> > > + return -EPERM;
> >
> > return -EINVAL is more appropriate than -EPERM.
> >
> > regards,
> > dan carpenter
> >
>
> I chose -EPERM because the driver uses it quite a few times in similar
> circumstances.
Yeah. I saw that when I reviewed the later patches in this series.
It's really not doing it right. -EPERM means permission checks like
access_ok() failed so it's not appropriate. -EINVAL is sort of general
purpose for invalid commands so it's probably the correct thing.
> At least with this driver, -EINVAL is used when the user
> attempts to write data that would never be valid. -EPERM is used when
> either the current device settings prevent some functionality from being
> used, or the device never supports that functionality. This patch is the
> latter, that these two chip ids never support this function.
>
> I'll change to -EINVAL in a v2 series, but I wonder if I should hold off
> on a separate patch for other instances in this driver since it will be
> undergoing a substantial refactoring.
Generally, you should prefer kernel standards over driver standards and
especially for staging. But it doesn't matter. When I reviewed this
patch, I hadn't seen that the driver was doing it like this but now I
know so it's fine. We can clean it all at once later if you want.
regards,
dan carpenter
next prev parent reply other threads:[~2018-12-14 6:27 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-12-12 0:54 [PATCH 00/11] staging: iio: adt7316: dac fixes Jeremy Fertic
2018-12-12 0:54 ` [PATCH 01/11] staging: iio: adt7316: fix register and bit definitions Jeremy Fertic
2018-12-16 11:19 ` Jonathan Cameron
2018-12-12 0:54 ` [PATCH 02/11] staging: iio: adt7316: invert the logic of the check for an ldac pin Jeremy Fertic
2018-12-12 8:19 ` Dan Carpenter
2018-12-13 22:06 ` Jeremy Fertic
2018-12-14 6:18 ` Dan Carpenter
2018-12-16 11:23 ` Jonathan Cameron
2018-12-12 0:54 ` [PATCH 03/11] staging: iio: adt7316: fix dac_bits assignment Jeremy Fertic
2018-12-16 11:37 ` Jonathan Cameron
2018-12-17 21:30 ` Jeremy Fertic
2018-12-22 18:03 ` Jonathan Cameron
2018-12-22 18:03 ` Jonathan Cameron
2018-12-22 18:03 ` Jonathan Cameron
2018-12-12 0:54 ` [PATCH 04/11] staging: iio: adt7316: fix handling of dac high resolution option Jeremy Fertic
2018-12-12 8:23 ` Dan Carpenter
2018-12-13 22:01 ` Jeremy Fertic
2018-12-14 6:26 ` Dan Carpenter [this message]
2018-12-14 21:29 ` Jeremy Fertic
2018-12-12 0:54 ` [PATCH 05/11] staging: iio: adt7316: fix the dac read calculation Jeremy Fertic
2018-12-16 11:45 ` Jonathan Cameron
2018-12-12 0:54 ` [PATCH 06/11] staging: iio: adt7316: fix the dac write calculation Jeremy Fertic
2018-12-16 11:47 ` Jonathan Cameron
2018-12-12 0:54 ` [PATCH 07/11] staging: iio: adt7316: use correct variable in DAC_internal_Vref read Jeremy Fertic
2018-12-16 11:51 ` Jonathan Cameron
2018-12-12 0:55 ` [PATCH 08/11] staging: iio: adt7316: allow adt751x to use internal vref for all dacs Jeremy Fertic
2018-12-16 11:54 ` Jonathan Cameron
2018-12-12 0:55 ` [PATCH 09/11] staging: iio: adt7316: remove dac vref buffer bypass from adt751x Jeremy Fertic
2018-12-16 11:56 ` Jonathan Cameron
2018-12-12 0:55 ` [PATCH 10/11] staging: iio: adt7316: change interpretation of write to dac update mode Jeremy Fertic
2018-12-12 8:31 ` Dan Carpenter
2018-12-12 11:05 ` Jonathan Cameron
2018-12-16 11:59 ` Jonathan Cameron
2018-12-12 0:55 ` [PATCH 11/11] staging: iio: adt7316: correct spelling of ADT7316_DA_EN_VIA_DAC_LDCA Jeremy Fertic
2018-12-16 12:00 ` Jonathan Cameron
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20181214062618.GW3116@kadam \
--to=dan.carpenter@oracle.com \
--cc=Michael.Hennerich@analog.com \
--cc=devel@driverdev.osuosl.org \
--cc=gregkh@linuxfoundation.org \
--cc=jeremyfertic@gmail.com \
--cc=jic23@kernel.org \
--cc=knaack.h@gmx.de \
--cc=lars@metafoo.de \
--cc=linux-iio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=pmeerw@pmeerw.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.