From: Yazen Ghannam <yazen.ghannam@amd.com>
To: Borislav Petkov <bp@alien8.de>
Cc: linux-edac@vger.kernel.org, linux-kernel@vger.kernel.org,
mchehab@kernel.org, tony.luck@intel.com, james.morse@arm.com,
rric@kernel.org, Smita.KoralahalliChannabasappa@amd.com,
william.roche@oracle.com
Subject: Re: [PATCH v3 2/2] EDAC/amd64: Add new register offset support and related changes
Date: Mon, 31 Jan 2022 22:43:37 +0000 [thread overview]
Message-ID: <YfhmGaLQWaFM1V0n@yaz-ubuntu> (raw)
In-Reply-To: <YeqmMcOSpjgHwYFD@zn.tnic>
On Fri, Jan 21, 2022 at 01:25:21PM +0100, Borislav Petkov wrote:
> On Tue, Dec 28, 2021 at 08:06:15PM +0000, Yazen Ghannam wrote:
> > diff --git a/drivers/edac/amd64_edac.c b/drivers/edac/amd64_edac.c
> > index 4db92c77276f..a299c361a904 100644
> > --- a/drivers/edac/amd64_edac.c
> > +++ b/drivers/edac/amd64_edac.c
> > @@ -15,6 +15,31 @@ static struct msr __percpu *msrs;
> >
> > static struct amd64_family_type *fam_type;
> >
> > +/* Family flag helpers */
> > +static inline u64 get_addr_cfg(void)
> > +{
> > + if (fam_type->flags.zn_regs_v2)
> > + return UMCCH_ADDR_CFG_DDR5;
> > +
> > + return UMCCH_ADDR_CFG;
> > +}
> > +
> > +static inline u64 get_addr_mask_sec(void)
> > +{
> > + if (fam_type->flags.zn_regs_v2)
> > + return UMCCH_ADDR_MASK_SEC_DDR5;
> > +
> > + return UMCCH_ADDR_MASK_SEC;
> > +}
> > +
> > +static inline u64 get_dimm_cfg(void)
> > +{
> > + if (fam_type->flags.zn_regs_v2)
> > + return UMCCH_DIMM_CFG_DDR5;
> > +
> > + return UMCCH_DIMM_CFG;
> > +}
>
> Yeah, you can do it either this way and have a lot of small functions
> or you can do what I did with mca_msr_reg() which is a single mapping
> function you then use everywhere.
>
> Your call.
>
Yes, I'll do this.
> > +
> > /* Per-node stuff */
> > static struct ecc_settings **ecc_stngs;
> >
> > @@ -1429,8 +1454,10 @@ static void __dump_misc_regs_df(struct amd64_pvt *pvt)
> > edac_dbg(1, "UMC%d x16 DIMMs present: %s\n",
> > i, (umc->dimm_cfg & BIT(7)) ? "yes" : "no");
> >
> > - if (pvt->dram_type == MEM_LRDDR4) {
> > - amd_smn_read(pvt->mc_node_id, umc_base + UMCCH_ADDR_CFG, &tmp);
> > + if (pvt->dram_type == MEM_LRDDR4 || pvt->dram_type == MEM_LRDDR5) {
>
> This still keeps the ->dram_type per pvt, which is per memory controller
> in amd64_edac nomenclature.
>
> But AFAIR, we said last time that the DRAM type is per UMC now, as you
> do in the previous patch.
>
> Which means, you either have to test umc->dimm_cfg to get the DRAM type
> here or push ->dram_type into the umc struct...
>
Yep, you're right. I'll cache the dram_type in the umc struct.
Thanks,
Yazen
prev parent reply other threads:[~2022-01-31 22:43 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-12-28 20:06 [PATCH v3 0/2] AMD Family 19h Models 10h-1Fh Updates Yazen Ghannam
2021-12-28 20:06 ` [PATCH v3 1/2] EDAC/amd64: Set memory type per DIMM Yazen Ghannam
2021-12-28 20:06 ` [PATCH v3 2/2] EDAC/amd64: Add new register offset support and related changes Yazen Ghannam
2022-01-01 12:36 ` kernel test robot
2022-01-21 12:25 ` Borislav Petkov
2022-01-31 22:43 ` Yazen Ghannam [this message]
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=YfhmGaLQWaFM1V0n@yaz-ubuntu \
--to=yazen.ghannam@amd.com \
--cc=Smita.KoralahalliChannabasappa@amd.com \
--cc=bp@alien8.de \
--cc=james.morse@arm.com \
--cc=linux-edac@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mchehab@kernel.org \
--cc=rric@kernel.org \
--cc=tony.luck@intel.com \
--cc=william.roche@oracle.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