Re: [PATCH v9 01/11] cxl: Split decoder programming into a reusable helper

Alejandro Lucero Palau <[email protected]>
Newsgroups org.kernel.vger.linux-tegra,org.kernel.vger.linux-cxl,org.kernel.vger.linux-kernel,org.kernel.vger.linux-pci
Message-ID <[email protected]>
On 7/9/26 02:02, Srirangan Madhavan wrote:
> Move common HDM decoder settings to include/cxl/cxl.h and route the
> register programming sequence through cxl_commit(). This lets reset code
> restore cached HDM state without depending on private cxl_core types while
> keeping hdm.c in charge of the existing commit policy checks.
>
> Build the low-level HDM helper under CONFIG_CXL_HDM so it is available even
> when cxl_core is modular.
>
> Signed-off-by: Srirangan Madhavan <[email protected]>
> ---
>   drivers/cxl/Kconfig          |   4 ++
>   drivers/cxl/core/Makefile    |   1 +
>   drivers/cxl/core/hdm.c       | 122 ++++-------------------------------
>   drivers/cxl/core/region.c    |   6 +-
>   drivers/cxl/core/reset.c     | 118 +++++++++++++++++++++++++++++++++
>   drivers/cxl/cxl.h            |  43 ------------
>   include/cxl/cxl.h            |  55 +++++++++++++++-
>   tools/testing/cxl/test/cxl.c |  10 +--
>   8 files changed, 197 insertions(+), 162 deletions(-)
>   create mode 100644 drivers/cxl/core/reset.c


<snip>


>   /*
>    * Track whether this decoder is free for userspace provisioning, reserved for
>    * region autodiscovery, whether it is started connecting (awaiting other
> @@ -322,7 +281,6 @@ enum cxl_decoder_state {
>    * struct cxl_endpoint_decoder - Endpoint  / SPA to DPA decoder
>    * @cxld: base cxl_decoder_object
>    * @dpa_res: actively claimed DPA span of this decoder
> - * @skip: offset into @dpa_res where @cxld.hpa_range maps
>    * @state: autodiscovery state
>    * @part: partition index this decoder maps
>    * @pos: interleave position in @cxld.region
> @@ -330,7 +288,6 @@ enum cxl_decoder_state {
>   struct cxl_endpoint_decoder {
>   	struct cxl_decoder cxld;
>   	struct resource *dpa_res;
> -	resource_size_t skip;


I understand this change moving skip to the cxl_decoder struct, but I do 
not undertand why dpa_res is not moved as well since skip refers to an 
offset inside dpa_res. Doesn't it?


If I am right this assumes only one decoder and mapping all the DPA. Is 
this the intention?
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.