[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20131117123902.GA3834@awedesk.fritz.box>
Date: Sun, 17 Nov 2013 13:39:02 +0100
From: Andreas Werner <wernerandy@....de>
To: Wolfram Sang <wsa@...-dreams.de>
Cc: khali@...ux-fr.org, jacmet@...site.dk, hskinnemoen@...il.com,
dianders@...omium.org, linux-i2c@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2] I2C: busses: i2c-eg20t Do not print error message in
syslog if no ACK received
On Sun, Nov 17, 2013 at 12:08:46PM +0100, Wolfram Sang wrote:
> On Sun, Nov 17, 2013 at 09:58:51AM +0100, Andreas Werner wrote:
> > Revision 2:
> > - delete the pch_err completly instead of changing to pch_dbg
> > because there is already a pch_dbg at the function who calls
> > pch_i2c_getack.
> > - Fixed message line issue
>
> I prefer this below "---" after Signed-off.
Ok i will change it next time.
>
> >
> > diff --git a/drivers/i2c/busses/i2c-eg20t.c b/drivers/i2c/busses/i2c-eg20t.c
> > index 0f37529..5c39f90 100644
> > --- a/drivers/i2c/busses/i2c-eg20t.c
> > +++ b/drivers/i2c/busses/i2c-eg20t.c
> > @@ -321,10 +321,8 @@ static s32 pch_i2c_getack(struct i2c_algo_pch_data *adap)
> > void __iomem *p = adap->pch_base_address;
> > reg_val = ioread32(p + PCH_I2CSR) & PCH_GETACK;
> >
> > - if (reg_val != 0) {
> > - pch_err(adap, "return%d\n", -EPROTO);
> > + if (reg_val != 0)
> > return -EPROTO;
>
> That could be fixed to -ENXIO according to
> Documentation/i2c/fault-codes.
Yes you are right -ENXIO should returned if no ACK was received.
Is there another reason why pch_i2c_getack returned EPROTO?
May be ENXIO was introduced later?
>
> > @@ -367,8 +365,7 @@ static int pch_i2c_wait_for_check_xfer(struct i2c_algo_pch_data *adap)
> > adap->pch_event_flag = 0;
> >
> > if (pch_i2c_getack(adap)) {
> > - pch_dbg(adap, "Receive NACK for slave address"
> > - "setting\n");
> > + pch_dbg(adap, "Receive NACK for slave address setting\n");
> > return -EIO;
>
> What about returning the value we got from pch_i2c_getack?
>
EIO is almost ok, because EIO means something went wrong when performing
an I/O operation, but yes we can return the value from pch_i2c_getack (ENXIO)
to get more detailed informations whats going wrong exactly (no ACK reveiced).
I think we can just replace the -EIO with -ENXIO or do you want to pick up the return
vale of pch_i2c_getack and return that ?
Regards
Andy
> Regards,
>
> Wolfram
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists