linux-edac.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Lei Wang <wangglei@gmail.com>
To: Rob Herring <robh+dt@kernel.org>
Cc: "bp@alien8.de" <bp@alien8.de>,
	"james.morse@arm.com" <james.morse@arm.com>,
	"mark.rutland@arm.com" <mark.rutland@arm.com>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"mchehab@kernel.org" <mchehab@kernel.org>,
	"linux-edac@vger.kernel.org" <linux-edac@vger.kernel.org>,
	"sashal@kernel.org" <sashal@kernel.org>,
	"hangl@microsoft.com" <hangl@microsoft.com>,
	"lewan@microsoft.com" <lewan@microsoft.com>,
	"ruizhao@microsoft.com" <ruizhao@microsoft.com>,
	"scott.branden@broadcom.com" <scott.branden@broadcom.com>,
	"yuqing.shen@broadcom.com" <yuqing.shen@broadcom.com>,
	"ray.jui@broadcom.com" <ray.jui@broadcom.com>,
	"wangglei@gmail.com" <wangglei@gmail.com>,
	leiwang_git@outlook.com
Subject: Re: [PATCH v6 1/2] dt-bindings: edac: arm-dmc520.txt
Date: Fri, 25 Oct 2019 10:31:38 -0700	[thread overview]
Message-ID: <f4b2c4b9-4999-6736-31eb-a63781013664@gmail.com> (raw)
In-Reply-To: <CAL_JsqJxcUr06+O_Ht5Kw0KXCWfSVC+6WMQqNxt-JehHh874hw@mail.gmail.com>

Thanks James/Rob/Borislav for pointing out the email list issue. My work 
email does not work good either for this exercise. Going forward I'll 
switch to my gmail account.

And Thanks Rob for reviewing! Please see below.

>> +++ b/Documentation/devicetree/bindings/edac/arm-dmc520.txt
>> @@ -0,0 +1,26 @@
>> +* ARM DMC-520 EDAC node
>> +
>> +Required properties:
>> +- compatible           : "brcm,dmc-520", "arm,dmc-520".
>> +- reg                  : Address range of the DMC-520 registers.
>> +- interrupts           : DMC-520 interrupt numbers. The example below specifies
>> +                         two interrupt lines for dram_ecc_errc_int and
>> +                         dram_ecc_errd_int.
>> +- interrupt-config     : This is an array of interrupt masks. For each of the
> 
> Not a standard property, so would need a vendor prefix...

Would dmc-interrupt-config as the property name work? Thanks!

> 
>> +                         above interrupt line, add one interrupt mask element to
>> +                         it. That is, there is a 1:1 mapping from each interrupt
>> +                         line to an interrupt mask. An interrupt mask can represent
>> +                         multiple interrupts being enabled. Refer to interrupt_control
>> +                         register in DMC-520 TRM for interrupt mapping. In the example
>> +                         below, the interrupt configuration enables dram_ecc_errc_int
>> +                         and dram_ecc_errd_int. And each interrupt is connected to
>> +                         a separate interrupt line.
> 
> I've gone and read thru the TRM some. This binding doesn't seem to
> correspond to the TRM at all. There are a bunch of interrupts and a
> combined interrupt, and then there's the same set for 'overflow'
> interrupts.
> 
> There's only one 'interrupt_control' reg. How do you have more that 1
> 32-bit value?

There is only one 'interrupt_control' register, for multiple interrupt 
sources. Then depending on platform hardware design, these interrupt 
sources can be wired to different physical interrupt lines.

That is, it is possible to mux interrupt sources into  interrupt lines 
for dmc520 in different ways. For example, in this particular brcm 
implementation,

Line 841: source dram_ecc_errc_int
Line 843: source dram_ecc_errd_int
Line 839: source dram_ecc_errc_int and dram_ecc_errd_int

There are two possibilities for implementing ecc counts for ce/ue. And 
we chose to use the single source line: as below, two interrupt lines 
0x349 and 0x34B, with interrupt masks 0x4 and 0x8 respectively.

Also, it's possible to implement using the combined-source line too: 
that would be one interrupt line 0x347, with interrupt mask 0xC.

This dt binding can support both by modifying the properties, without 
having to modify driver code.

 >> +
 >> +Example:
 >> +
 >> +dmc0: dmc@200000 {
 >> +       compatible = "brcm,dmc-520", "arm,dmc-520";
 >> +       reg = <0x200000 0x80000>;
 >> +       interrupts = <0x0 0x349 0x4>, <0x0 0x34B 0x4>;
 >> +       interrupt-config = <0x4>, <0x8>;
 >> +};
 >> --
 >> 2.17.1

Thanks!

-Lei


  reply	other threads:[~2019-10-25 17:31 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <BY5PR04MB6599EAA659A53B2331CB812586890@BY5PR04MB6599.namprd04.prod.outlook.com>
2019-09-23 16:10 ` [PATCH v6 1/2] dt-bindings: edac: arm-dmc520.txt Borislav Petkov
     [not found]   ` <e2b9cd68-abaa-bdcd-cc56-cca285272569@outlook.com>
     [not found]     ` <41637032-a308-9a92-1b49-cb51af2580f8@outlook.com>
     [not found]       ` <BY5PR04MB65996A0CEB37001C763B248C866C0@BY5PR04MB6599.namprd04.prod.outlook.com>
2019-10-21 16:43         ` James Morse
     [not found]           ` <BY5PR04MB659953E22E846D0BF4384D0086690@BY5PR04MB6599.namprd04.prod.outlook.com>
2019-10-22 12:33             ` Borislav Petkov
2019-10-23 13:22             ` James Morse
2019-10-23 15:22               ` Rob Herring
2019-10-23 15:37 ` Rob Herring
2019-10-25 17:31   ` Lei Wang [this message]
2019-11-01 21:30     ` Lei Wang

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=f4b2c4b9-4999-6736-31eb-a63781013664@gmail.com \
    --to=wangglei@gmail.com \
    --cc=bp@alien8.de \
    --cc=devicetree@vger.kernel.org \
    --cc=hangl@microsoft.com \
    --cc=james.morse@arm.com \
    --cc=leiwang_git@outlook.com \
    --cc=lewan@microsoft.com \
    --cc=linux-edac@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=mchehab@kernel.org \
    --cc=ray.jui@broadcom.com \
    --cc=robh+dt@kernel.org \
    --cc=ruizhao@microsoft.com \
    --cc=sashal@kernel.org \
    --cc=scott.branden@broadcom.com \
    --cc=yuqing.shen@broadcom.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).