From: Jonathan Cameron via <qemu-devel@nongnu.org>
To: Fan Ni <fan.ni@samsung.com>
Cc: "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
"Michael Tsirkin" <mst@redhat.com>,
"Philippe Mathieu-Daudé" <philmd@linaro.org>,
"linux-cxl@vger.kernel.org" <linux-cxl@vger.kernel.org>,
"linuxarm@huawei.com" <linuxarm@huawei.com>
Subject: Re: [PATCH v3 2/4] hw/cxl: Add utility functions decoder interleave ways and target count.
Date: Wed, 13 Sep 2023 09:58:08 +0100 [thread overview]
Message-ID: <20230913095808.00000df4@Huawei.com> (raw)
In-Reply-To: <20230912172005.GB319114@bgt-140510-bm03>
On Tue, 12 Sep 2023 17:20:05 +0000
Fan Ni <fan.ni@samsung.com> wrote:
> On Mon, Sep 11, 2023 at 12:43:11PM +0100, Jonathan Cameron wrote:
>
> > As an encoded version of these key configuration parameters is available
> > in a register, provide functions to extract it again so as to avoid
> > the need for duplicating the storage.
> >
> > Whilst here update the _enc() function to include additional values
> > as defined in the CXL 3.0 specification. Whilst they are not
> > currently used in the emulation, they may be in future and it is
> > easier to compare with the specification if all values are covered.
> >
> > Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> > Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
> > ---
>
> LGTM. Only one minor comment inline.
>
> Reviewed-by: Fan Ni <fan.ni@samsung.com>
Thanks!
> > +
> > +int cxl_decoder_count_dec(int enc_cnt)
> > +{
> > + switch (enc_cnt) {
> > + case 0x0: return 1;
> > + case 0x1: return 2;
> > + case 0x2: return 4;
> > + case 0x3: return 6;
> > + case 0x4: return 8;
> > + case 0x5: return 10;
> > + /* Switches and Host Bridges may have more than 10 decoders */
> > + case 0x6: return 12;
> > + case 0x7: return 14;
> > + case 0x8: return 16;
> > + case 0x9: return 20;
> > + case 0xa: return 24;
> > + case 0xb: return 28;
> > + case 0xc: return 32;
> > }
> > return 0;
> > }
> > @@ -410,6 +440,23 @@ uint8_t cxl_interleave_ways_enc(int iw, Error **errp)
> > }
> > }
> >
>
> Similar as decoder count dec/enc, maybe we want to add a line of comment below.
> /* CXL r3.0 Section 8.2.4.19.7 CXL HDM Decoder n Control Register */
I'll do it before cxl_interleave_ways_enc() - one function up in the file
as applies equally well there.
>
> Fan
> > +int cxl_interleave_ways_dec(uint8_t iw_enc, Error **errp)
> > +{
> > + switch (iw_enc) {
> > + case 0x0: return 1;
> > + case 0x1: return 2;
> > + case 0x2: return 4;
> > + case 0x3: return 8;
> > + case 0x4: return 16;
> > + case 0x8: return 3;
> > + case 0x9: return 6;
> > + case 0xa: return 12;
> > + default:
> > + error_setg(errp, "Encoded interleave ways: %d not supported", iw_enc);
> > + return 0;
> > + }
> > +}
> > +
> > uint8_t cxl_interleave_granularity_enc(uint64_t gran, Error **errp)
> > {
> > switch (gran) {
> > --
> > 2.39.2
> >
> >
next prev parent reply other threads:[~2023-09-13 8:59 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-09-11 11:43 [PATCH v3 0/4] hw/cxl: Support emulating 4 HDM decoders throughout topology Jonathan Cameron via
2023-09-11 11:43 ` [PATCH v3 1/4] hw/cxl: Push cxl_decoder_count_enc() and cxl_decode_ig() into .c Jonathan Cameron via
[not found] ` <CGME20230912161441uscas1p11618b32cdd50462c8267f12e1518e590@uscas1p1.samsung.com>
2023-09-12 16:14 ` Fan Ni
2023-09-11 11:43 ` [PATCH v3 2/4] hw/cxl: Add utility functions decoder interleave ways and target count Jonathan Cameron via
[not found] ` <CGME20230912172006uscas1p1f48a880aeaf7fad3400929d4bc919ae5@uscas1p1.samsung.com>
2023-09-12 17:20 ` Fan Ni
2023-09-13 8:58 ` Jonathan Cameron via [this message]
2023-09-11 11:43 ` [PATCH v3 3/4] hw/cxl: Fix and use same calculation for HDM decoder block size everywhere Jonathan Cameron via
[not found] ` <CGME20230912174357uscas1p23b767b0b88830d2b8a7179439d224a9e@uscas1p2.samsung.com>
2023-09-12 17:43 ` Fan Ni
2023-09-13 6:53 ` Philippe Mathieu-Daudé
2023-09-13 9:01 ` Jonathan Cameron via
2023-09-11 11:43 ` [PATCH v3 4/4] hw/cxl: Support 4 HDM decoders at all levels of topology Jonathan Cameron via
[not found] ` <CGME20230912180845uscas1p28e989eaff6b92939cfdb85886137354b@uscas1p2.samsung.com>
2023-09-12 18:08 ` Fan Ni
2023-09-13 9:03 ` Jonathan Cameron via
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=20230913095808.00000df4@Huawei.com \
--to=qemu-devel@nongnu.org \
--cc=Jonathan.Cameron@Huawei.com \
--cc=fan.ni@samsung.com \
--cc=linux-cxl@vger.kernel.org \
--cc=linuxarm@huawei.com \
--cc=mst@redhat.com \
--cc=philmd@linaro.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).