devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Borislav Petkov <bp-Gina5bIWoIWzQB+pC5nmwQ@public.gmane.org>
To: Arnd Bergmann <arnd-r2nGTMty4D4@public.gmane.org>
Cc: Rob Herring <robherring2-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	Loc Ho <lho-qTEPVZfXA3Y@public.gmane.org>,
	Doug Thompson
	<dougthompson-aS9lmoZGLiVWk0Htik3J/w@public.gmane.org>,
	Mauro Carvalho Chehab
	<mchehab-JPH+aEBZ4P+UEJcrhfAQsw@public.gmane.org>,
	Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
	Mark Rutland <mark.rutland-5wv7dgnIgG8@public.gmane.org>,
	Ian Campbell
	<ijc+devicetree-KcIKpvwj1kUDXYZnReoRVg@public.gmane.org>,
	linux-edac-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	"devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
	<devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	"linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org"
	<linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org>,
	"jcm-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org"
	<jcm-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
	"patches-qTEPVZfXA3Y@public.gmane.org"
	<patches-qTEPVZfXA3Y@public.gmane.org>,
	Feng Kan <fkan-qTEPVZfXA3Y@public.gmane.org>
Subject: Re: [PATCH v7 3/5] Documentation: Add documentation for the APM X-Gene SoC EDAC DTS binding
Date: Thu, 30 Apr 2015 11:41:34 +0200	[thread overview]
Message-ID: <20150430094134.GD3488@pd.tnic> (raw)
In-Reply-To: <7128860.xHITr0VFap@wuerfel>

On Thu, Apr 30, 2015 at 11:01:43AM +0200, Arnd Bergmann wrote:
> Ok, but I'd also do multiple drivers for one vendor if they have several
> blocks that are clearly unrelated. My understanding was that this is the
> case here, but I have not looked too closely.

AFAIU, this is a driver for a bunch of xgene IP blocks.

Now, if someone integrates xgene memory controller in some other hw
platform, we could still serve it with the same xgene-edac driver -
it'll simply use only the memory controller part of the functionality.

> Note that a lot of vendors do not like to say who they licensed IP
> blocks from, or they are contractually required not to say it.

Then there's that :-\

But the moment they supply an EDAC driver, one can recognize the IP
block from the registers and functionality, no? Or do they change stuff
a little bit so that it looks sufficiently different?

> Yes, that is helpful feedback, but seems unrelated to the discussion
> about how to split this driver or not.

Yeah, I know. I just wanted to mention that in the discussion because
I get the impression that people are throwing out EDAC drivers just
because the hw functionality is there. So I wanted to remind people to
step back and consider the usefullness of such a driver first.

> Ok, let me try to state what I think we agree on:
> 
> - For EDAC devices that are clearly unrelated (in particular, made by
>   different vendors, but possibly part of the same chip), there should
>   be one module per device type that registers one platform_driver.
> 
> - For EDAC drivers that are variants of one another (e.g. different
>   generations of the same memory controller), we want one module with
>   one platform_driver that can handle all variants.
> 
> Let me know if you disagree with the above. If that's fine, I think it
> leaves the case where we have one chip that has multiple EDAC blocks
> and we can't easily tell if those blocks are all inter-related or not.
> For this case, I would like to rely on your judgment as subsystem
> maintainer on whether the parts look related enough to have a single
> driver (with matching all device variants) or one driver for each
> class of device, as well as spotting cases where a part already has
> a driver from a different chip vendor that was licensing the same IP
> block.

Well, so the way I see it is, if we could map the EDAC drivers to the IP
blocks. I.e., I'd like to have EDAC drivers mapped to the *IP* *blocks*
vendor *instead* of the platform vendor.

We will have to be able to load multiple EDAC drivers anyway but it'll
be much easier this way.

So let's have an example:

Let's say there's one xgene_edac driver which contains all the RAS
functionality of xgene IP blocks. Memory controller, L3 cache,
whatever...

Now, three *platform* vendors license, say, the xgene memory controller.

With my scheme, xgene_edac will be loaded on all those three vendors'
Linux. Done.

But if those three vendors went and created an EDAC module each for
their system, it would be a lot of repeated copy'pasting and bloat.

Now, the other dimension doesn't look better either:

xgene_edac_mc
xgene_edac_mc-v2
xgene_edac_l3
xgene_edac-l2
...

Also, in both cases, if any of those drivers need to talk to each other
or know of one another in any way, the situation becomes really funny as
they need to create something ad-hoc each time.

And this all can be avoided by having a single IP-blocks RAS driver.

Does that make more sense? Can it even be done with devicetree and all?

Thanks.

-- 
Regards/Gruss,
    Boris.

ECO tip #101: Trim your mails when you reply.
--
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

  reply	other threads:[~2015-04-30  9:41 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-28 22:10 [PATCH v7 0/4] edac: Add APM X-Gene SoC EDAC driver Loc Ho
     [not found] ` <1430259045-19012-1-git-send-email-lho-qTEPVZfXA3Y@public.gmane.org>
2015-04-28 22:10   ` [PATCH v7 1/5] arm64: Enable EDAC on ARM64 Loc Ho
     [not found]     ` <1430259045-19012-2-git-send-email-lho-qTEPVZfXA3Y@public.gmane.org>
2015-04-28 22:10       ` [PATCH v7 2/5] MAINTAINERS: Add entry for APM X-Gene SoC EDAC driver Loc Ho
     [not found]         ` <1430259045-19012-3-git-send-email-lho-qTEPVZfXA3Y@public.gmane.org>
2015-04-28 22:10           ` [PATCH v7 3/5] Documentation: Add documentation for the APM X-Gene SoC EDAC DTS binding Loc Ho
     [not found]             ` <1430259045-19012-4-git-send-email-lho-qTEPVZfXA3Y@public.gmane.org>
2015-04-28 22:10               ` [PATCH v7 4/5] edac: Add APM X-Gene SoC EDAC driver Loc Ho
     [not found]                 ` <1430259045-19012-5-git-send-email-lho-qTEPVZfXA3Y@public.gmane.org>
2015-04-28 22:10                   ` [PATCH 5/5] arm64: Add APM X-Gene SoC EDAC DTS entries Loc Ho
2015-04-29 17:00                   ` [PATCH v7 4/5] edac: Add APM X-Gene SoC EDAC driver Rob Herring
2015-04-29  8:49                 ` Arnd Bergmann
2015-04-29 16:57                   ` Rob Herring
2015-04-29 18:23                     ` Arnd Bergmann
2015-04-29 16:47               ` [PATCH v7 3/5] Documentation: Add documentation for the APM X-Gene SoC EDAC DTS binding Rob Herring
     [not found]                 ` <CAL_Jsq+nhPUxHxrStB9cdy1YzE7tVPFVR1MrWq3Bz-JUa=3Rvg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-04-29 21:33                   ` Loc Ho
     [not found]                     ` <CAPw-ZTnLR10Zr_p8L3-1nBZ+jKE1HCwERDmO=S5as2GLqime3A-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-04-29 21:49                       ` Borislav Petkov
     [not found]                         ` <20150429214924.GH5498-fF5Pk5pvG8Y@public.gmane.org>
2015-04-29 21:56                           ` Loc Ho
     [not found]                             ` <CAPw-ZTmoash48S3F8kBxsovD0mEPYBO8=XDaJ2peDu60yaGrZQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-04-29 22:08                               ` Borislav Petkov
     [not found]                                 ` <20150429220830.GI5498-fF5Pk5pvG8Y@public.gmane.org>
2015-04-29 22:20                                   ` Loc Ho
2015-04-29 23:02                                   ` Rob Herring
     [not found]                                     ` <CAL_JsqL8UnDco14Z8H7ZcxS=fLNiYgSb6ivv=zzpVctiD0FptA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-04-30  8:20                                       ` Borislav Petkov
     [not found]                                         ` <20150430082051.GA3488-fF5Pk5pvG8Y@public.gmane.org>
2015-04-30  8:31                                           ` Arnd Bergmann
2015-04-30  8:45                                             ` Borislav Petkov
     [not found]                                               ` <20150430084549.GB3488-fF5Pk5pvG8Y@public.gmane.org>
2015-04-30  9:01                                                 ` Arnd Bergmann
2015-04-30  9:41                                                   ` Borislav Petkov [this message]
     [not found]                                                     ` <20150430094134.GD3488-fF5Pk5pvG8Y@public.gmane.org>
2015-04-30 10:21                                                       ` Arnd Bergmann
2015-04-30 12:33                                                         ` Borislav Petkov
     [not found]                                                           ` <20150430123300.GE3488-fF5Pk5pvG8Y@public.gmane.org>
2015-04-30 12:52                                                             ` Arnd Bergmann
2015-04-30 10:42                                                       ` Arnd Bergmann
2015-04-30 13:00                                                         ` Borislav Petkov
     [not found]                                                           ` <20150430130028.GF3488-fF5Pk5pvG8Y@public.gmane.org>
2015-04-30 16:57                                                             ` Loc Ho
     [not found]                                                               ` <CAPw-ZTnuyB2ne1C2-38qAxM_ANwdr9nuCYUMj=aTx7c90sVg+Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-04-30 17:18                                                                 ` Borislav Petkov
2015-04-30 21:19                                                                   ` Loc Ho
     [not found]                                                                     ` <CAPw-ZTksYNDE2zVD=ZjGzpKfXQN8KgW85ZnHoQ2eVmSGdSdMOw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-04-30 21:30                                                                       ` Borislav Petkov
     [not found]                                                                         ` <20150430213045.GK3488-fF5Pk5pvG8Y@public.gmane.org>
2015-04-30 21:39                                                                           ` Loc Ho
2015-04-30 22:36                                                                       ` Rob Herring
     [not found]                                                                         ` <CAL_JsqL7emqq=bSaWSi_0G5qSJqO+nVH_JH7VY+ynbrHhaSf_g-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-04-30 22:47                                                                           ` Arnd Bergmann
2015-05-01  6:44                                                                             ` Loc Ho
2015-04-30 22:59                                                                           ` Loc Ho
2015-05-01 19:59                                                                           ` Loc Ho
2015-05-04 22:36                                                                             ` Rob Herring
     [not found]                                                                               ` <CAL_JsqLyyBCd3DcwjWw57XCQ0fEWHXo_0dkWeBo=TVDoXM_zhQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-05-04 23:39                                                                                 ` Loc Ho
2015-04-29 22:43                               ` Rob Herring
     [not found]                                 ` <CAL_JsqL0BMmpVT6hK23ZOhiGRscv1UDYWirA0ik4UZuXf5ku2Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-04-30  0:47                                   ` Loc Ho
2015-04-29 14:40       ` [PATCH v7 1/5] arm64: Enable EDAC on ARM64 Catalin Marinas
     [not found]         ` <20150429144031.GB18867-M2fw3Uu6cmfZROr8t4l/smS4ubULX0JqMm0uRHvK7Nw@public.gmane.org>
2015-04-29 14:46           ` Jon Masters
2015-04-29 21:39           ` Loc Ho

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=20150430094134.GD3488@pd.tnic \
    --to=bp-gina5biwoiwzqb+pc5nmwq@public.gmane.org \
    --cc=arnd-r2nGTMty4D4@public.gmane.org \
    --cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=dougthompson-aS9lmoZGLiVWk0Htik3J/w@public.gmane.org \
    --cc=fkan-qTEPVZfXA3Y@public.gmane.org \
    --cc=ijc+devicetree-KcIKpvwj1kUDXYZnReoRVg@public.gmane.org \
    --cc=jcm-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
    --cc=lho-qTEPVZfXA3Y@public.gmane.org \
    --cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
    --cc=linux-edac-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=mark.rutland-5wv7dgnIgG8@public.gmane.org \
    --cc=mchehab-JPH+aEBZ4P+UEJcrhfAQsw@public.gmane.org \
    --cc=patches-qTEPVZfXA3Y@public.gmane.org \
    --cc=robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
    --cc=robherring2-Re5JQEeQqe8AvxtiuMwx3w@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 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).