Re: [PATCH v4 2/4] cxl/hdm: Only interpret interleave settings on committed decoders

Davidlohr Bueso <[email protected]> Wed, 29 Jul 2026 09:34:35 -0700
Newsgroups org.kernel.vger.linux-cxl
Message-ID <20260729163435.7bkqk43tngtkx35w@offworld>
On Mon, 20 Jul 2026, Alison Schofield wrote:

>Decoder enumeration reads the interleave ways and granularity fields
>from the CTRL register unconditionally, then decodes and validates
>them for every decoder. On an uncommitted decoder these fields are
>stale. They hold whatever was last latched and are reprogrammed when
>the decoder is committed. Interpreting them serves no purpose, and
>rejecting enumeration on a reserved encoding in those stale bits can
>fail an otherwise usable decoder.
>
>Decode and validate interleave ways and granularity only when the
>decoder is committed. On an uncommitted decoder the stale register
>values are not interpreted. The interleave fields are set when the
>decoder is programmed at commit time.
>

It's weird to cat the respective sysfs file and get bogus values.
imo this should be kept as is.

Thanks,
Davidlohr