All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andreas Werner <wernerandy-Mmb7MZpHnFY@public.gmane.org>
To: Marek Vasut <marex-ynQEQJNshbs@public.gmane.org>
Cc: wsa-z923LK4zBo2bacvFa/9K2g@public.gmane.org,
	jacmet-OfajU3CKLf1/SzgSGea1oA@public.gmane.org,
	baohua.song-kQvG35nSl+M@public.gmane.org,
	linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [PATCH] I2C: busses: Do not print error message in syslog if no ACK received
Date: Wed, 13 Nov 2013 19:24:15 +0100	[thread overview]
Message-ID: <20131113182415.GA1458@thinkpad.fritz.box> (raw)
In-Reply-To: <201311121933.41038.marex-ynQEQJNshbs@public.gmane.org>

On Tue, Nov 12, 2013 at 07:33:40PM +0100, Marek Vasut wrote:
> Dear Andreas Werner,
> 
> > On Tue, Nov 12, 2013 at 07:00:59PM +0100, Marek Vasut wrote:
> > > Dear Andreas Werner,
> > > 
> > > > Using the i2c-eg20t driver and call i2cdetect or probe on the bus,
> > > > the driver will print a lot of error messages if there was no ACK
> > > > received.
> > > > 
> > > > i2cdetect normally print a table with all the available devices. If
> > > > there is no device on the address, the table will be empty.
> > > > Currently with the i2c-eg20t driver, the table is not visible because
> > > > the error messages destroy the table.
> > > > 
> > > > Error message: pch_i2c_getack return -71
> > > > 
> > > > This patch prevent the driver to print the messages to syslog if debug
> > > > is not set.
> > > > 
> > > > Tested on Intel Atom E6xx and Eg20t Chipset.
> > > > 
> > > > Signed-off-by: Andreas Werner <wernerandy-Mmb7MZpHnFY@public.gmane.org>
> > > > ---
> > > > 
> > > >  drivers/i2c/busses/i2c-eg20t.c | 2 +-
> > > >  1 file changed, 1 insertion(+), 1 deletion(-)
> > > > 
> > > > diff --git a/drivers/i2c/busses/i2c-eg20t.c
> > > > b/drivers/i2c/busses/i2c-eg20t.c index 0f37529..b10c651 100644
> > > > --- a/drivers/i2c/busses/i2c-eg20t.c
> > > > +++ b/drivers/i2c/busses/i2c-eg20t.c
> > > > @@ -322,7 +322,7 @@ static s32 pch_i2c_getack(struct i2c_algo_pch_data
> > > > *adap) reg_val = ioread32(p + PCH_I2CSR) & PCH_GETACK;
> > > > 
> > > >  	if (reg_val != 0) {
> > > > 
> > > > -		pch_err(adap, "return%d\n", -EPROTO);
> > > > +		pch_dbg(adap, "return%d\n", -EPROTO);
> > > > 
> > > >  		return -EPROTO;
> > > >  	
> > > >  	}
> > > 
> > > I'd just kill the pch_err() line altogether:
> >   But why? I think there a few pch_err message which are interesting to
> > have in syslog, without building the dbg driver.
> 
> See below for explanation why this one particular pch_err() line can go. Sorry 
> if I was not clear enough, I meant only this one particular pch_err() line, NOT 
> all of them.
> 
> > 
> > > if (reg_val)
> > > 
> > > 	return -EPROTO;
> > > 
> > > That is because if you look at the only caller of this function, which is
> > > pch_i2c_wait_for_check_xfer(), you will see that at the only place where
> > > pch_i2c_getack() is called there is already pch_dbg():
> > > 
> > > 369         if (pch_i2c_getack(adap)) {
> > > 370                 pch_dbg(adap, "Receive NACK for slave address"
> > > 371                         "setting\n");
> > > 372                 return -EIO;
> > > 373         }
> > >
Sorry i misunderstood that. You are absolutly right, thats the best solution for that.
Remove the pch_err at getack so that only the pch_dbg get printed where getack is called.
This should be enough information.

 
> > > btw. (idea for subsequent patch) this pch_dbg() should be fixed to be a
> > > one- liner /wrt the text so we can grep for the error messages. Such
> > > text arg should never be split in multiple lines in kernel.
> > 
> >   Ok i will wait a few days for further comments to this patch and then
> >   i will resend the patch with a one liner message.
> 
> Sure, wait at least for Wolfram's consent on this please ;-)
> 
> Best regards,
> Marek Vasut

WARNING: multiple messages have this Message-ID (diff)
From: Andreas Werner <wernerandy@gmx.de>
To: Marek Vasut <marex@denx.de>
Cc: wsa@the-dreams.de, jacmet@sunsite.dk, baohua.song@csr.com,
	linux-i2c@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] I2C: busses: Do not print error message in syslog if no ACK received
Date: Wed, 13 Nov 2013 19:24:15 +0100	[thread overview]
Message-ID: <20131113182415.GA1458@thinkpad.fritz.box> (raw)
In-Reply-To: <201311121933.41038.marex@denx.de>

On Tue, Nov 12, 2013 at 07:33:40PM +0100, Marek Vasut wrote:
> Dear Andreas Werner,
> 
> > On Tue, Nov 12, 2013 at 07:00:59PM +0100, Marek Vasut wrote:
> > > Dear Andreas Werner,
> > > 
> > > > Using the i2c-eg20t driver and call i2cdetect or probe on the bus,
> > > > the driver will print a lot of error messages if there was no ACK
> > > > received.
> > > > 
> > > > i2cdetect normally print a table with all the available devices. If
> > > > there is no device on the address, the table will be empty.
> > > > Currently with the i2c-eg20t driver, the table is not visible because
> > > > the error messages destroy the table.
> > > > 
> > > > Error message: pch_i2c_getack return -71
> > > > 
> > > > This patch prevent the driver to print the messages to syslog if debug
> > > > is not set.
> > > > 
> > > > Tested on Intel Atom E6xx and Eg20t Chipset.
> > > > 
> > > > Signed-off-by: Andreas Werner <wernerandy@gmx.de>
> > > > ---
> > > > 
> > > >  drivers/i2c/busses/i2c-eg20t.c | 2 +-
> > > >  1 file changed, 1 insertion(+), 1 deletion(-)
> > > > 
> > > > diff --git a/drivers/i2c/busses/i2c-eg20t.c
> > > > b/drivers/i2c/busses/i2c-eg20t.c index 0f37529..b10c651 100644
> > > > --- a/drivers/i2c/busses/i2c-eg20t.c
> > > > +++ b/drivers/i2c/busses/i2c-eg20t.c
> > > > @@ -322,7 +322,7 @@ static s32 pch_i2c_getack(struct i2c_algo_pch_data
> > > > *adap) reg_val = ioread32(p + PCH_I2CSR) & PCH_GETACK;
> > > > 
> > > >  	if (reg_val != 0) {
> > > > 
> > > > -		pch_err(adap, "return%d\n", -EPROTO);
> > > > +		pch_dbg(adap, "return%d\n", -EPROTO);
> > > > 
> > > >  		return -EPROTO;
> > > >  	
> > > >  	}
> > > 
> > > I'd just kill the pch_err() line altogether:
> >   But why? I think there a few pch_err message which are interesting to
> > have in syslog, without building the dbg driver.
> 
> See below for explanation why this one particular pch_err() line can go. Sorry 
> if I was not clear enough, I meant only this one particular pch_err() line, NOT 
> all of them.
> 
> > 
> > > if (reg_val)
> > > 
> > > 	return -EPROTO;
> > > 
> > > That is because if you look at the only caller of this function, which is
> > > pch_i2c_wait_for_check_xfer(), you will see that at the only place where
> > > pch_i2c_getack() is called there is already pch_dbg():
> > > 
> > > 369         if (pch_i2c_getack(adap)) {
> > > 370                 pch_dbg(adap, "Receive NACK for slave address"
> > > 371                         "setting\n");
> > > 372                 return -EIO;
> > > 373         }
> > >
Sorry i misunderstood that. You are absolutly right, thats the best solution for that.
Remove the pch_err at getack so that only the pch_dbg get printed where getack is called.
This should be enough information.

 
> > > btw. (idea for subsequent patch) this pch_dbg() should be fixed to be a
> > > one- liner /wrt the text so we can grep for the error messages. Such
> > > text arg should never be split in multiple lines in kernel.
> > 
> >   Ok i will wait a few days for further comments to this patch and then
> >   i will resend the patch with a one liner message.
> 
> Sure, wait at least for Wolfram's consent on this please ;-)
> 
> Best regards,
> Marek Vasut

  parent reply	other threads:[~2013-11-13 18:24 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-11-12 17:45 [PATCH] I2C: busses: Do not print error message in syslog if no ACK received Andreas Werner
2013-11-12 18:00 ` Marek Vasut
     [not found]   ` <201311121900.59305.marex-ynQEQJNshbs@public.gmane.org>
2013-11-12 18:23     ` Andreas Werner
2013-11-12 18:23       ` Andreas Werner
     [not found]       ` <20131112182344.GA5012-Zv899e0YUSYXU02nzanrWNbf9cGiqdzd@public.gmane.org>
2013-11-12 18:33         ` Marek Vasut
2013-11-12 18:33           ` Marek Vasut
     [not found]           ` <201311121933.41038.marex-ynQEQJNshbs@public.gmane.org>
2013-11-13 18:24             ` Andreas Werner [this message]
2013-11-13 18:24               ` Andreas Werner
     [not found]               ` <20131113182415.GA1458-Zv899e0YUSYXU02nzanrWNbf9cGiqdzd@public.gmane.org>
2013-11-13 19:24                 ` Marek Vasut
2013-11-13 19:24                   ` Marek Vasut
     [not found]                   ` <201311132024.06853.marex-ynQEQJNshbs@public.gmane.org>
2013-11-14 13:39                     ` Joe Perches
2013-11-14 13:39                       ` Joe Perches
2013-11-14 18:26                       ` Andreas Werner
2013-11-14 18:26                         ` Andreas Werner

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=20131113182415.GA1458@thinkpad.fritz.box \
    --to=wernerandy-mmb7mzphnfy@public.gmane.org \
    --cc=baohua.song-kQvG35nSl+M@public.gmane.org \
    --cc=jacmet-OfajU3CKLf1/SzgSGea1oA@public.gmane.org \
    --cc=linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=marex-ynQEQJNshbs@public.gmane.org \
    --cc=wsa-z923LK4zBo2bacvFa/9K2g@public.gmane.org \
    /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.