No description
Find a file
Dan Williams 27b3f8d138 cxl/region: Program target lists
Once the region's interleave geometry (ways, granularity, size) is
established and all the endpoint decoder targets are assigned, the next
phase is to program all the intermediate decoders. Specifically, each
CXL switch in the path between the endpoint and its CXL host-bridge
(including the logical switch internal to the host-bridge) needs to have
its decoders programmed and the target list order assigned.

The difficulty in this implementation lies in determining which endpoint
decoder ordering combinations are valid. Consider the cxl_test case of 2
host bridges, each of those host-bridges attached to 2 switches, and
each of those switches attached to 2 endpoints for a potential 8-way
interleave. The x2 interleave at the host-bridge level requires that all
even numbered endpoint decoder positions be located on the "left" hand
side of the topology tree, and the odd numbered positions on the other.
The endpoints that are peers on the same switch need to have a position
that can be routed with a dedicated address bit per-endpoint. See
check_last_peer() for the details.

Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Link: https://lore.kernel.org/r/165784337827.1758207.132121746122685208.stgit@dwillia2-xfh.jf.intel.com
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2022-07-25 12:18:07 -07:00
arch X86 updates: 2022-06-19 09:58:28 -05:00
block block/bfq: Enable I/O statistics 2022-06-16 16:59:28 -06:00
certs certs: fix and refactor CONFIG_SYSTEM_BLACKLIST_HASH_LIST build 2022-06-15 21:52:32 +03:00
crypto crypto: memneq - move into lib/ 2022-06-12 14:51:51 +08:00
Documentation cxl/region: Enable the assignment of endpoint decoders to regions 2022-07-25 12:18:07 -07:00
drivers cxl/region: Program target lists 2022-07-25 12:18:07 -07:00
fs Fixes for 5.19-rc3: 2022-06-19 09:24:49 -05:00
include resource: Introduce alloc_free_mem_region() 2022-07-21 17:19:25 -07:00
init gcc-12: disable '-Warray-bounds' universally for now 2022-06-09 10:11:12 -07:00
ipc
kernel resource: Introduce alloc_free_mem_region() 2022-07-21 17:19:25 -07:00
lib Build tool updates: 2022-06-19 09:54:16 -05:00
LICENSES
mm resource: Introduce alloc_free_mem_region() 2022-07-21 17:19:25 -07:00
net NFS Client Fixes for Linux 5.19-rc 2022-06-17 15:17:57 -05:00
samples
scripts Build tool updates: 2022-06-19 09:54:16 -05:00
security selinux: free contexts previously transferred in selinux_add_opt() 2022-06-15 21:20:45 -04:00
sound sound fixes for 5.19-rc2 2022-06-10 10:20:57 -07:00
tools cxl/region: Add region creation support 2022-07-21 17:19:25 -07:00
usr
virt KVM: x86: disable preemption around the call to kvm_arch_vcpu_{un|}blocking 2022-06-09 10:52:20 -04:00
.clang-format PCI/DOE: Add DOE mailbox support functions 2022-07-19 15:38:04 -07:00
.cocciconfig
.get_maintainer.ignore
.gitattributes
.gitignore
.mailmap MAINTAINERS: Update Ben's email address 2022-06-21 12:59:51 -07:00
COPYING
CREDITS
Kbuild
Kconfig
MAINTAINERS MAINTAINERS: Update Ben's email address 2022-06-21 12:59:51 -07:00
Makefile Linux 5.19-rc3 2022-06-19 15:06:47 -05:00
README

Linux kernel
============

There are several guides for kernel developers and users. These guides can
be rendered in a number of formats, like HTML and PDF. Please read
Documentation/admin-guide/README.rst first.

In order to build the documentation, use ``make htmldocs`` or
``make pdfdocs``.  The formatted documentation can also be read online at:

    https://www.kernel.org/doc/html/latest/

There are various text files in the Documentation/ subdirectory,
several of them using the Restructured Text markup notation.

Please read the Documentation/process/changes.rst file, as it contains the
requirements for building and running the kernel, and information about
the problems which may result by upgrading your kernel.