[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20210506223654.1310516-1-ira.weiny@intel.com>
Date: Thu, 6 May 2021 15:36:50 -0700
From: ira.weiny@...el.com
To: Ben Widawsky <ben.widawsky@...el.com>,
Dan Williams <dan.j.williams@...el.com>
Cc: Ira Weiny <ira.weiny@...el.com>,
Alison Schofield <alison.schofield@...el.com>,
Vishal Verma <vishal.l.verma@...el.com>,
Jonathan Cameron <Jonathan.Cameron@...wei.com>,
linux-cxl@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: [PATCH 0/4] Map register blocks individually
From: Ira Weiny <ira.weiny@...el.com>
User space will want to map some register blocks. Currently BARs are mapped in
their entirety and pointers to the register blocks are created into those
mappings. This will prevent mappings from user space.
This series has 3 clean up patches followed by a patch to mapping the register
blocks individually.
Unfortunately, the information for the register blocks is contained inside the
BARs themselves. Which means the BAR must be mapped, probed, and unmapped
prior to the registers being mapped individually.
The probe stage creates list of register maps which is then iterated to map
the individual register blocks.
Ira Weiny (4):
cxl/mem: Fully decode device capability header
cxl/mem: Reserve all device regions at once
cxl/mem: Introduce cxl_decode_register_block()
cxl/mem: Map registers based on capabilities
drivers/cxl/core.c | 84 ++++++++++++++++++++------
drivers/cxl/cxl.h | 34 +++++++++--
drivers/cxl/pci.c | 147 +++++++++++++++++++++++++++++++++++----------
3 files changed, 211 insertions(+), 54 deletions(-)
--
2.28.0.rc0.12.gb6a658bd00c9
Powered by blists - more mailing lists