From: "Jonathan Neuschäfer" <j.neuschaefer@gmx.net>
To: Avi Fishman <avifishman70@gmail.com>
Cc: "Jonathan Neuschäfer" <j.neuschaefer@gmx.net>,
"Tomer Maimon" <tmaimon77@gmail.com>,
KWLIU@nuvoton.com, "Tali Perry" <tali.perry1@gmail.com>,
"Linux I2C" <linux-i2c@vger.kernel.org>,
"Andy Shevchenko" <andriy.shevchenko@linux.intel.com>,
"Benjamin Fair" <benjaminfair@google.com>,
"Krzysztof Kozlowski" <krzysztof.kozlowski@canonical.com>,
"OpenBMC Maillist" <openbmc@lists.ozlabs.org>,
JJLIU0@nuvoton.com, "Lukas Bulwahn" <lukas.bulwahn@gmail.com>,
"Tomer Maimon" <tomer.maimon@nuvoton.com>,
devicetree <devicetree@vger.kernel.org>,
bence98@sch.bme.hu, "Arnd Bergmann" <arnd@arndb.de>,
sven@svenpeter.dev, "Rob Herring" <robh+dt@kernel.org>,
"Avi Fishman" <Avi.Fishman@nuvoton.com>,
"Tyrone Ting" <warp5tw@gmail.com>,
yangyicong@hisilicon.com, semen.protsenko@linaro.org,
jie.deng@intel.com, "Patrick Venture" <venture@google.com>,
"Linux Kernel Mailing List" <linux-kernel@vger.kernel.org>,
"Wolfram Sang" <wsa@kernel.org>,
kfting@nuvoton.com, "Tali Perry" <tali.perry@nuvoton.com>,
olof@lixom.net
Subject: Re: [PATCH v3 08/11] i2c: npcm: Correct register access width
Date: Tue, 22 Mar 2022 18:51:35 +0100 [thread overview]
Message-ID: <YjoMpyEmuXHObF1p@latitude> (raw)
In-Reply-To: <CAKKbWA4quvDbHWBdckAsKe65fDXXe8M-9CsjaP=4wsA=-NnULA@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 2506 bytes --]
On Tue, Mar 22, 2022 at 07:18:34PM +0200, Avi Fishman wrote:
> On Fri, Mar 4, 2022 at 10:42 PM Jonathan Neuschäfer
> <j.neuschaefer@gmx.net> wrote:
> >
> > Hello,
> >
> > On Thu, Mar 03, 2022 at 04:15:18PM +0200, Andy Shevchenko wrote:
> > > On Thu, Mar 03, 2022 at 02:54:27PM +0200, Tali Perry wrote:
> > > > > On Thu, Mar 03, 2022 at 04:31:38PM +0800, Tyrone Ting wrote:
> > > > > > From: Tyrone Ting <kfting@nuvoton.com>
> > > > > >
> > > > > > Use ioread8 instead of ioread32 to access the SMBnCTL3 register since
> > > > > > the register is only 8-bit wide.
> > > > >
> > > > > > Fixes: 56a1485b102e ("i2c: npcm7xx: Add Nuvoton NPCM I2C controller driver")
> > > > >
> > > > > No, this is bad commit message, since you have bitwise masks and there is
> > > > > nothing to fix from functional point of view. So, why is this a fix?
> > > > >
> > > >
> > > > The next gen of this device is a 64 bit cpu.
> > > > The module is and was 8 bit.
> > > >
> > > > The ioread32 that seemed to work smoothly on a 32 bit machine
> > > > was causing a panic on a 64 bit machine.
> > > > since the module is 8 bit we changed to ioread8.
> > > > This is working both for the 32 and 64 CPUs with no issue.
> > >
> > > Then the commit message is completely wrong here.
> >
> > I disagree: The commit message is perhaps incomplete, but not wrong.
> > The SMBnCTL3 register was specified as 8 bits wide in the datasheets of
> > multiple chip generations, as far as I can tell, but the driver wrongly
> > made a 32-bit access, which just happened not to blow up.
> >
> > So, indeed, "since the register is only 8-bit wide" seems to be a
> > correct claim.
> >
> > > And provide necessary (no need to have noisy commit messages)
> > > bits of the oops to show what's going on
> >
> > I guess it's blowing up now because SMBnCTL3 isn't 32-bit aligned
> > (being at offset 0x0e in the controller).
> >
>
> Hi Andy,
> After this clarification can you please acknowledge this specific patch?
> If you think there is a better way to describe this, can you propose one?
To be honest, I think it's probably best to include all the necessary
explanations in the next version of this patch, i.e.:
- That the register was always defined as 8-bit in the datasheets,
and so the 32-bit access was always incorrect, but simply didn't
cause a visible error
- How the 32-bit access caused an error now, perhaps with a trimmed
Oops log as Andy suggested
Jonathan
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
WARNING: multiple messages have this Message-ID (diff)
From: "Jonathan Neuschäfer" <j.neuschaefer@gmx.net>
To: Avi Fishman <avifishman70@gmail.com>
Cc: "Tomer Maimon" <tmaimon77@gmail.com>,
devicetree <devicetree@vger.kernel.org>,
yangyicong@hisilicon.com, "Linux I2C" <linux-i2c@vger.kernel.org>,
"Andy Shevchenko" <andriy.shevchenko@linux.intel.com>,
"Benjamin Fair" <benjaminfair@google.com>,
"Krzysztof Kozlowski" <krzysztof.kozlowski@canonical.com>,
"OpenBMC Maillist" <openbmc@lists.ozlabs.org>,
JJLIU0@nuvoton.com, "Lukas Bulwahn" <lukas.bulwahn@gmail.com>,
"Tomer Maimon" <tomer.maimon@nuvoton.com>,
KWLIU@nuvoton.com, bence98@sch.bme.hu,
"Arnd Bergmann" <arnd@arndb.de>,
sven@svenpeter.dev, "Jonathan Neuschäfer" <j.neuschaefer@gmx.net>,
"Rob Herring" <robh+dt@kernel.org>,
"Avi Fishman" <Avi.Fishman@nuvoton.com>,
"Tyrone Ting" <warp5tw@gmail.com>,
"Tali Perry" <tali.perry1@gmail.com>,
semen.protsenko@linaro.org, jie.deng@intel.com,
"Patrick Venture" <venture@google.com>,
"Linux Kernel Mailing List" <linux-kernel@vger.kernel.org>,
"Wolfram Sang" <wsa@kernel.org>,
kfting@nuvoton.com, "Tali Perry" <tali.perry@nuvoton.com>,
olof@lixom.net
Subject: Re: [PATCH v3 08/11] i2c: npcm: Correct register access width
Date: Tue, 22 Mar 2022 18:51:35 +0100 [thread overview]
Message-ID: <YjoMpyEmuXHObF1p@latitude> (raw)
In-Reply-To: <CAKKbWA4quvDbHWBdckAsKe65fDXXe8M-9CsjaP=4wsA=-NnULA@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 2506 bytes --]
On Tue, Mar 22, 2022 at 07:18:34PM +0200, Avi Fishman wrote:
> On Fri, Mar 4, 2022 at 10:42 PM Jonathan Neuschäfer
> <j.neuschaefer@gmx.net> wrote:
> >
> > Hello,
> >
> > On Thu, Mar 03, 2022 at 04:15:18PM +0200, Andy Shevchenko wrote:
> > > On Thu, Mar 03, 2022 at 02:54:27PM +0200, Tali Perry wrote:
> > > > > On Thu, Mar 03, 2022 at 04:31:38PM +0800, Tyrone Ting wrote:
> > > > > > From: Tyrone Ting <kfting@nuvoton.com>
> > > > > >
> > > > > > Use ioread8 instead of ioread32 to access the SMBnCTL3 register since
> > > > > > the register is only 8-bit wide.
> > > > >
> > > > > > Fixes: 56a1485b102e ("i2c: npcm7xx: Add Nuvoton NPCM I2C controller driver")
> > > > >
> > > > > No, this is bad commit message, since you have bitwise masks and there is
> > > > > nothing to fix from functional point of view. So, why is this a fix?
> > > > >
> > > >
> > > > The next gen of this device is a 64 bit cpu.
> > > > The module is and was 8 bit.
> > > >
> > > > The ioread32 that seemed to work smoothly on a 32 bit machine
> > > > was causing a panic on a 64 bit machine.
> > > > since the module is 8 bit we changed to ioread8.
> > > > This is working both for the 32 and 64 CPUs with no issue.
> > >
> > > Then the commit message is completely wrong here.
> >
> > I disagree: The commit message is perhaps incomplete, but not wrong.
> > The SMBnCTL3 register was specified as 8 bits wide in the datasheets of
> > multiple chip generations, as far as I can tell, but the driver wrongly
> > made a 32-bit access, which just happened not to blow up.
> >
> > So, indeed, "since the register is only 8-bit wide" seems to be a
> > correct claim.
> >
> > > And provide necessary (no need to have noisy commit messages)
> > > bits of the oops to show what's going on
> >
> > I guess it's blowing up now because SMBnCTL3 isn't 32-bit aligned
> > (being at offset 0x0e in the controller).
> >
>
> Hi Andy,
> After this clarification can you please acknowledge this specific patch?
> If you think there is a better way to describe this, can you propose one?
To be honest, I think it's probably best to include all the necessary
explanations in the next version of this patch, i.e.:
- That the register was always defined as 8-bit in the datasheets,
and so the 32-bit access was always incorrect, but simply didn't
cause a visible error
- How the 32-bit access caused an error now, perhaps with a trimmed
Oops log as Andy suggested
Jonathan
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
next prev parent reply other threads:[~2022-03-22 17:52 UTC|newest]
Thread overview: 79+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-03-03 8:31 [PATCH v3 00/11] i2c: npcm: Bug fixes timeout, spurious interrupts Tyrone Ting
2022-03-03 8:31 ` Tyrone Ting
2022-03-03 8:31 ` [PATCH v3 01/11] arm: dts: add new property for NPCM i2c module Tyrone Ting
2022-03-03 8:31 ` Tyrone Ting
2022-03-18 20:28 ` Wolfram Sang
2022-03-18 20:28 ` Wolfram Sang
2022-03-20 9:34 ` Tyrone Ting
2022-03-20 9:42 ` Wolfram Sang
2022-03-20 9:42 ` Wolfram Sang
2022-03-03 8:31 ` [PATCH v3 02/11] dt-bindings: i2c: npcm: support NPCM845 Tyrone Ting
2022-03-03 8:31 ` Tyrone Ting
2022-03-03 10:37 ` Krzysztof Kozlowski
2022-03-03 10:37 ` Krzysztof Kozlowski
2022-03-04 13:30 ` Tyrone Ting
2022-03-04 13:30 ` Tyrone Ting
2022-03-03 8:31 ` [PATCH v3 03/11] i2c: npcm: Fix client address calculation Tyrone Ting
2022-03-03 8:31 ` Tyrone Ting
2022-03-03 10:30 ` Andy Shevchenko
2022-03-03 10:30 ` Andy Shevchenko
2022-03-04 13:39 ` Tyrone Ting
2022-03-04 13:39 ` Tyrone Ting
2022-03-03 8:31 ` [PATCH v3 04/11] i2c: npcm: Change the way of getting GCR regmap Tyrone Ting
2022-03-03 8:31 ` Tyrone Ting
2022-03-03 10:38 ` Krzysztof Kozlowski
2022-03-03 10:38 ` Krzysztof Kozlowski
2022-03-04 13:32 ` Tyrone Ting
2022-03-04 13:32 ` Tyrone Ting
2022-03-03 8:31 ` [PATCH v3 05/11] i2c: npcm: Remove unused variable clk_regmap Tyrone Ting
2022-03-03 8:31 ` Tyrone Ting
2022-03-03 8:31 ` [PATCH v3 06/11] i2c: npcm: Fix timeout calculation Tyrone Ting
2022-03-03 8:31 ` Tyrone Ting
2022-03-03 8:31 ` [PATCH v3 07/11] i2c: npcm: Add tx complete counter Tyrone Ting
2022-03-03 8:31 ` Tyrone Ting
2022-03-03 8:31 ` [PATCH v3 08/11] i2c: npcm: Correct register access width Tyrone Ting
2022-03-03 8:31 ` Tyrone Ting
2022-03-03 10:33 ` Andy Shevchenko
2022-03-03 10:33 ` Andy Shevchenko
2022-03-03 12:54 ` Tali Perry
2022-03-03 12:54 ` Tali Perry
2022-03-03 14:15 ` Andy Shevchenko
2022-03-03 14:15 ` Andy Shevchenko
2022-03-04 20:42 ` Jonathan Neuschäfer
2022-03-04 20:42 ` Jonathan Neuschäfer
2022-03-22 17:18 ` Avi Fishman
2022-03-22 17:18 ` Avi Fishman
2022-03-22 17:51 ` Jonathan Neuschäfer [this message]
2022-03-22 17:51 ` Jonathan Neuschäfer
2022-03-03 8:31 ` [PATCH v3 09/11] i2c: npcm: Handle spurious interrupts Tyrone Ting
2022-03-03 8:31 ` Tyrone Ting
2022-03-03 10:36 ` Andy Shevchenko
2022-03-03 10:36 ` Andy Shevchenko
2022-03-03 12:48 ` Tali Perry
2022-03-03 12:48 ` Tali Perry
2022-03-03 14:13 ` Andy Shevchenko
2022-03-03 14:13 ` Andy Shevchenko
2022-04-04 17:03 ` Avi Fishman
2022-04-04 17:03 ` Avi Fishman
2022-04-05 7:13 ` Andy Shevchenko
2022-04-05 7:13 ` Andy Shevchenko
2022-04-10 7:33 ` Avi Fishman
2022-04-10 7:33 ` Avi Fishman
2022-03-03 8:31 ` [PATCH v3 10/11] i2c: npcm: Remove own slave addresses 2:10 Tyrone Ting
2022-03-03 8:31 ` Tyrone Ting
2022-03-03 8:31 ` [PATCH v3 11/11] i2c: npcm: Support NPCM845 Tyrone Ting
2022-03-03 8:31 ` Tyrone Ting
2022-03-03 10:43 ` Andy Shevchenko
2022-03-03 10:43 ` Andy Shevchenko
2022-03-03 12:35 ` Tali Perry
2022-03-03 12:35 ` Tali Perry
2022-03-03 14:10 ` Andy Shevchenko
2022-03-03 14:10 ` Andy Shevchenko
2022-03-06 13:33 ` Tomer Maimon
2022-03-07 9:43 ` Andy Shevchenko
2022-03-07 9:43 ` Andy Shevchenko
2022-03-07 19:47 ` Tomer Maimon
2022-03-03 10:26 ` [PATCH v3 00/11] i2c: npcm: Bug fixes timeout, spurious interrupts Andy Shevchenko
2022-03-03 10:26 ` Andy Shevchenko
2022-03-03 13:03 ` Tali Perry
2022-03-03 13:03 ` Tali Perry
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=YjoMpyEmuXHObF1p@latitude \
--to=j.neuschaefer@gmx.net \
--cc=Avi.Fishman@nuvoton.com \
--cc=JJLIU0@nuvoton.com \
--cc=KWLIU@nuvoton.com \
--cc=andriy.shevchenko@linux.intel.com \
--cc=arnd@arndb.de \
--cc=avifishman70@gmail.com \
--cc=bence98@sch.bme.hu \
--cc=benjaminfair@google.com \
--cc=devicetree@vger.kernel.org \
--cc=jie.deng@intel.com \
--cc=kfting@nuvoton.com \
--cc=krzysztof.kozlowski@canonical.com \
--cc=linux-i2c@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lukas.bulwahn@gmail.com \
--cc=olof@lixom.net \
--cc=openbmc@lists.ozlabs.org \
--cc=robh+dt@kernel.org \
--cc=semen.protsenko@linaro.org \
--cc=sven@svenpeter.dev \
--cc=tali.perry1@gmail.com \
--cc=tali.perry@nuvoton.com \
--cc=tmaimon77@gmail.com \
--cc=tomer.maimon@nuvoton.com \
--cc=venture@google.com \
--cc=warp5tw@gmail.com \
--cc=wsa@kernel.org \
--cc=yangyicong@hisilicon.com \
/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.