linux/Documentation/driver-api
Linus Torvalds e812928be2 cxl changes for v7.0
- A set of commits that introduces cxl_memdev_attach and pave way for
   soft reserved handling, type2 accelerator enabling, and LSA 2.0
   enabling. All these series require the endpoint driver to settle
   before continuing the memdev driver probe.
 
 dax/hmem, e820, resource: Defer Soft Reserved insertion until hmem is ready
 cxl/mem: Introduce cxl_memdev_attach for CXL-dependent operation
 cxl/mem: Drop @host argument to devm_cxl_add_memdev()
 cxl/mem: Convert devm_cxl_add_memdev() to scope-based-cleanup
 cxl/port: Arrange for always synchronous endpoint attach
 cxl/mem: Arrange for always-synchronous memdev attach
 cxl/mem: Fix devm_cxl_memdev_edac_release() confusion
 
 - A set to address CXL port error protocol handling and reporting. The
   large patch series was split into 3 parts. Part 1 and 2 are included
   here with part 3 coming later. Part 1 consists of a series of code
   refactoring to PCI AER sub-system that addresses CXL and also CXL
   RAS code to prepare for port error handling. Part 2 refactors the
   CXL code to move management of component registers to cxl_port
   objects to allow all CXL AER errors to be handled through the
   cxl_port hierarchy.
 
 Part 2:
 cxl/port: Move endpoint component register management to cxl_port
 cxl/port: Map Port RAS registers
 cxl/port: Move dport RAS setup to dport add time
 cxl/port: Move dport probe operations to a driver event
 cxl/port: Move decoder setup before dport creation
 cxl/port: Cleanup dport removal with a devres group
 cxl/port: Reduce number of @dport variables in cxl_port_add_dport()
 cxl/port: Cleanup handling of the nr_dports 0 -> 1 transition
 
 Part 1:
 cxl: Update RAS handler interfaces to also support CXL Ports
 cxl/mem: Clarify @host for devm_cxl_add_nvdimm()
 PCI/AER: Update struct aer_err_info with kernel-doc formatting
 PCI/AER: Report CXL or PCIe bus type in AER trace logging
 PCI/AER: Use guard() in cxl_rch_handle_error_iter()
 PCI/AER: Move CXL RCH error handling to aer_cxl_rch.c
 PCI/AER: Update is_internal_error() to be non-static is_aer_internal_error()
 PCI/AER: Export pci_aer_unmask_internal_errors()
 cxl/pci: Move CXL driver's RCH error handling into core/ras_rch.c
 PCI/AER: Replace PCIEAER_CXL symbol with CXL_RAS
 cxl/pci: Remove CXL VH handling in CONFIG_PCIEAER_CXL conditional blocks from core/pci.c
 PCI: Replace cxl_error_is_native() with pcie_aer_is_native()
 cxl/pci: Remove unnecessary CXL RCH handling helper functions
 cxl/pci: Remove unnecessary CXL Endpoint handling helper functions
 PCI: Introduce pcie_is_cxl()
 PCI: Update CXL DVSEC definitions
 PCI: Move CXL DVSEC definitions into uapi/linux/pci_regs.h
 
 - A set of patches to provide AMD Zen5 platform address translation for
   CXL using ACPI PRMT. Set includes a conventions document to explain
   why this is needed and how it's implemented.
 
 cxl: Disable HPA/SPA translation handlers for Normalized Addressing
 cxl/region: Factor out code into cxl_region_setup_poison()
 cxl/atl: Lock decoders that need address translation
 cxl: Enable AMD Zen5 address translation using ACPI PRMT
 cxl/acpi: Prepare use of EFI runtime services
 cxl: Introduce callback for HPA address ranges translation
 cxl/region: Use region data to get the root decoder
 cxl/region: Add @hpa_range argument to function cxl_calc_interleave_pos()
 cxl/region: Separate region parameter setup and region construction
 cxl: Simplify cxl_root_ops allocation and handling
 cxl/region: Store HPA range in struct cxl_region
 cxl/region: Store root decoder in struct cxl_region
 cxl/region: Rename misleading variable name @hpa to @hpa_range
 Documentation/driver-api/cxl: ACPI PRM Address Translation Support and AMD Zen5 enablement
 cxl, doc: Moving conventions in separate files
 cxl, doc: Remove isonum.txt inclusion
 
 - A set of misc CXL patches of fixes, cleanups, and updates. Including
   CXL address translation for unaligned MOD3 regions.
 
 cxl: Fix premature commit_end increment on decoder commit failure
 cxl/region: Use do_div() for 64-bit modulo operation
 cxl/region: Translate HPA to DPA and memdev in unaligned regions
 cxl/region: Translate DPA->HPA in unaligned MOD3 regions
 cxl/core: Fix cxl_dport debugfs EINJ entries
 cxl/acpi: Remove cxl_acpi_set_cache_size()
 cxl/hdm: Fix newline character in dev_err() messages
 cxl/pci: Remove outdated FIXME comment and BUILD_BUG_ON
 Documentation/driver-api/cxl: device hotplug section
 Documentation/driver-api/cxl: BIOS/EFI expectation update
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEE5DAy15EJMCV1R6v9YGjFFmlTOEoFAmmOFXcACgkQYGjFFmlT
 OEojaxAApQJFLyX1MkPbhtm6j6GRzzEAEWTBX2XsmliZf1JhfahsNMWI69kO33rm
 LddF+nyZNEl/foyHgUaxVzlQwqWuihyp7Qk2djXnMzLsuCAsWhPbB9j0RgJUN8h5
 N4U76AmOdmhLlXH4CCqoW2jNy0OjxNdgp1FtTHv7VO7RxgRE9MFJRkLulKxB03wy
 t6lRZXPofEFcHen40DlYRtW26vy1BYUO0dng2f16DxWrb1ztdACH/zVqCJJtdoFc
 FAT5EaQCeRYZ9Yz4dONw3DcUjYlG6NcRN9FWNiptBn1Pb7pUX55Le8lfD3qZg0an
 m3lWRs1T/lGz7pWmz4GPUKDwGFCEqLqd4oSz5v+dFR3JJxjJpRzKa19y5TfqK/LF
 diqNZsDD9gCXE1HXzNr1YcbllpU2cPRPf58gWG9bLmG5xUUmScib8LoTMfgcCJW5
 SlC6kf7BFLkJfDTcFaILc/UANeZaLGhrV0vyJntfGyT5EqKOcfjQEvrZvofA8mef
 bdxt0IRDW4D+7kkcuR33OipTVUFG3ban8yYq4zXD64dmeHF76gwdJm3nyXsqdtpc
 IYIIhz0W6pbTKjJ2fy1rZcTac1ZaALstyaF4bYWIjyF3NylPM8tDi48DFr+DGgeX
 xkFs2B9p5vY5Cq73gCmSWsi3PBPTjWzeRp7YZrV6VoBd9uqewUs=
 =blFQ
 -----END PGP SIGNATURE-----

Merge tag 'cxl-for-7.0' of git://git.kernel.org/pub/scm/linux/kernel/git/cxl/cxl

Pull CXL updates from Dave Jiang:

 - Introduce cxl_memdev_attach and pave way for soft reserved handling,
   type2 accelerator enabling, and LSA 2.0 enabling. All these series
   require the endpoint driver to settle before continuing the memdev
   driver probe.

 - Address CXL port error protocol handling and reporting.

   The large patch series was split into three parts. The first two
   parts are included here with the final part coming later.

   The first part consists of a series of code refactoring to PCI AER
   sub-system that addresses CXL and also CXL RAS code to prepare for
   port error handling.

   The second part refactors the CXL code to move management of
   component registers to cxl_port objects to allow all CXL AER errors
   to be handled through the cxl_port hierarchy.

 - Provide AMD Zen5 platform address translation for CXL using ACPI
   PRMT. This includes a conventions document to explain why this is
   needed and how it's implemented.

 - Misc CXL patches of fixes, cleanups, and updates. Including CXL
   address translation for unaligned MOD3 regions.

[ TLA service: CXL is "Compute Express Link" ]

* tag 'cxl-for-7.0' of git://git.kernel.org/pub/scm/linux/kernel/git/cxl/cxl: (59 commits)
  cxl: Disable HPA/SPA translation handlers for Normalized Addressing
  cxl/region: Factor out code into cxl_region_setup_poison()
  cxl/atl: Lock decoders that need address translation
  cxl: Enable AMD Zen5 address translation using ACPI PRMT
  cxl/acpi: Prepare use of EFI runtime services
  cxl: Introduce callback for HPA address ranges translation
  cxl/region: Use region data to get the root decoder
  cxl/region: Add @hpa_range argument to function cxl_calc_interleave_pos()
  cxl/region: Separate region parameter setup and region construction
  cxl: Simplify cxl_root_ops allocation and handling
  cxl/region: Store HPA range in struct cxl_region
  cxl/region: Store root decoder in struct cxl_region
  cxl/region: Rename misleading variable name @hpa to @hpa_range
  Documentation/driver-api/cxl: ACPI PRM Address Translation Support and AMD Zen5 enablement
  cxl, doc: Moving conventions in separate files
  cxl, doc: Remove isonum.txt inclusion
  cxl/port: Unify endpoint and switch port lookup
  cxl/port: Move endpoint component register management to cxl_port
  cxl/port: Map Port RAS registers
  cxl/port: Move dport RAS setup to dport add time
  ...
2026-02-12 16:33:05 -08:00
..
80211 Documentation: use a source-read extension for the index link boilerplate 2026-01-23 11:59:34 -07:00
acpi ACPI: Documentation: driver-api: Disapprove of using ACPI drivers 2026-01-15 14:27:38 +01:00
backlight
coco Documentation: use a source-read extension for the index link boilerplate 2026-01-23 11:59:34 -07:00
crypto Documentation: use a source-read extension for the index link boilerplate 2026-01-23 11:59:34 -07:00
cxl cxl changes for v7.0 2026-02-12 16:33:05 -08:00
dmaengine Documentation: use a source-read extension for the index link boilerplate 2026-01-23 11:59:34 -07:00
driver-model Documentation: use a source-read extension for the index link boilerplate 2026-01-23 11:59:34 -07:00
early-userspace Documentation: use a source-read extension for the index link boilerplate 2026-01-23 11:59:34 -07:00
firmware Documentation: use a source-read extension for the index link boilerplate 2026-01-23 11:59:34 -07:00
fpga fpga: region: add owner module and take its refcount 2024-04-23 15:37:20 +08:00
gpio Documentation: gpio: pca953x: clarify interrupt source detection 2026-01-08 10:50:33 +01:00
hte hte: Re-phrase tegra API document 2023-04-26 15:43:19 -07:00
i3c docs: driver-api: fix spelling of "buses". 2025-09-18 10:40:46 -06:00
iio docs: iio: Allow creating cross-references ABI 2025-02-18 13:42:46 -07:00
md Documentation: driver-api: correct spelling 2023-02-02 11:05:16 -07:00
media media: vb2: remove vb2_ops_wait_prepare/finish helpers 2025-12-18 11:14:57 +01:00
mei docs: driver-api: properly format ToC headings 2023-11-17 13:05:26 -07:00
memory-devices Documentation: use a source-read extension for the index link boilerplate 2026-01-23 11:59:34 -07:00
mmc Documentation: mmc: Add mmc-test doc 2024-09-05 12:13:39 +02:00
mtd Docs: typos/spelling 2024-05-02 10:02:29 -06:00
nfc Documentation: driver-api: correct spelling 2023-02-02 11:05:16 -07:00
nvdimm Documentation: btt: Unwrap bit 31-30 nested table 2025-11-07 09:06:51 -06:00
pci Documentation: use a source-read extension for the index link boilerplate 2026-01-23 11:59:34 -07:00
phy docs: fix 're-use' -> 'reuse' in documentation 2026-02-02 09:54:15 -07:00
pldmfw Documentation: pldmfw: Demote library overview section 2025-11-05 11:29:30 -07:00
pm Documentation: use a source-read extension for the index link boilerplate 2026-01-23 11:59:34 -07:00
rapidio
serial Documentation: use a source-read extension for the index link boilerplate 2026-01-23 11:59:34 -07:00
soundwire Documentation: use a source-read extension for the index link boilerplate 2026-01-23 11:59:34 -07:00
surface_aggregator Documentation: use a source-read extension for the index link boilerplate 2026-01-23 11:59:34 -07:00
thermal thermal: int340x: processor_thermal: Enable slow workload type hints 2026-01-07 21:42:10 +01:00
tty docs: fix 're-use' -> 'reuse' in documentation 2026-02-02 09:54:15 -07:00
usb docs: fix 're-use' -> 'reuse' in documentation 2026-02-02 09:54:15 -07:00
virtio virtio: store owner from modules with register_virtio_driver() 2024-04-08 04:11:04 -04:00
xilinx Documentation: use a source-read extension for the index link boilerplate 2026-01-23 11:59:34 -07:00
aperture.rst drm: Implement DRM aperture helpers under video/ 2022-06-27 11:07:55 +02:00
auxiliary_bus.rst drivers/base: Remove unused auxiliary_find_device 2024-10-14 08:21:09 +02:00
basics.rst docs: Update documentation to avoid mentioning of kernel.h 2025-12-22 14:59:18 -07:00
clk.rst docs: clk: add documentation to log which clocks have been disabled 2023-04-20 17:53:38 -06:00
component.rst
connector.rst
console.rst
devfreq.rst
device-io.rst docs: driver-api: fix spelling of "buses". 2025-09-18 10:40:46 -06:00
device_link.rst
dma-buf.rst dma-buf: Remove DMA-BUF sysfs stats 2026-01-19 19:10:01 +05:30
dpll.rst dpll: add phase-adjust-gran pin attribute 2025-10-31 17:59:17 -07:00
edac.rst EDAC/amd64: Document heterogeneous system enumeration 2023-06-05 12:27:15 +02:00
eisa.rst docs: driver-api: fix spelling of "buses". 2025-09-18 10:40:46 -06:00
extcon.rst Documentation: extcon: add documentation for Extcon subsystem 2024-12-08 21:59:40 +09:00
firewire.rst firewire: core: expose kernel API to schedule work item to process isochronous context 2024-09-08 13:05:48 +09:00
frame-buffer.rst
generic-counter.rst docs: arm: generic-counter: Allow creating cross-references for ABI 2025-02-18 13:42:46 -07:00
generic_pt.rst iommupt: Documentation fixes 2025-11-07 11:12:03 +01:00
hsi.rst Documentation: driver-api: correct spelling 2023-02-02 11:05:16 -07:00
hw-recoverable-errors.rst vmcoreinfo: track and log recoverable hardware errors 2025-11-27 14:24:44 -08:00
i2c.rst
index.rst Documentation: use a source-read extension for the index link boilerplate 2026-01-23 11:59:34 -07:00
infiniband.rst docs: driver-api/infiniband.rst: fix Kerneldoc markup 2025-03-04 09:47:38 -07:00
infrastructure.rst driver core: add a faux bus for use when a simple device/bus is needed 2025-02-13 16:58:51 +01:00
input.rst Add libps2 to the input section of driver-api 2024-07-03 16:20:49 -06:00
interconnect.rst interconnect: Add debugfs test client 2023-08-22 21:04:50 +03:00
io-mapping.rst Documentation: driver-api: correct spelling 2023-02-02 11:05:16 -07:00
io_ordering.rst
ioctl.rst
ipmb.rst
ipmi.rst docs: driver-api: fix spelling of "buses". 2025-09-18 10:40:46 -06:00
isa.rst Remove duplicate words inside documentation 2022-09-27 13:21:43 -06:00
libata.rst Documentation: driver-api: Update libata error handler information 2025-07-16 09:31:43 +02:00
mailbox.rst Documentation: mailbox: mbox_chan_ops.flush() is optional 2025-12-22 15:30:31 -07:00
men-chameleon-bus.rst
message-based.rst
misc_devices.rst
miscellaneous.rst docs/driver-api/miscellaneous: Remove kernel-doc of serial_core.c 2022-11-09 14:56:05 +01:00
mtdnand.rst treewide: Update email address 2026-01-11 06:09:11 -10:00
ntb.rst Documentation: NTB: Fix typo 2025-05-19 09:04:21 -06:00
nvmem.rst nvmem: Remove unused nvmem cell table support 2025-05-21 14:28:27 +02:00
parport-lowlevel.rst Documentation: parport-lowlevel: Separate function listing code blocks 2025-11-10 12:47:36 -07:00
pin-control.rst pci-v6.18-changes 2025-10-06 10:41:03 -07:00
pps.rst Documentation: driver-api: pps: Add Intel Timed I/O PPS generator 2025-02-21 10:46:49 +01:00
ptp.rst docs: ptp.rst: Add information about NVIDIA Mellanox devices 2023-06-20 09:02:32 +01:00
pwm.rst docs: pwm: Adapt Locking paragraph to reality 2025-07-07 08:39:36 +02:00
pwrseq.rst Documentation: pwrseq: Fix trivial misspellings 2024-11-22 10:36:53 -07:00
regulator.rst
reset.rst Documentation: reset: Remove reset_controller_add_lookup() 2025-11-20 10:02:37 +01:00
rfkill.rst
s390-drivers.rst docs: move s390 under arch 2023-07-24 12:12:24 +02:00
scsi.rst docs: driver-api: fix spelling of "buses". 2025-09-18 10:40:46 -06:00
slimbus.rst
sm501.rst
spi.rst docs: driver-api: fix spelling of "buses". 2025-09-18 10:40:46 -06:00
switchtec.rst
sync_file.rst
target.rst
tee.rst tee: Adapt documentation to cover recent additions 2025-12-17 18:28:28 +01:00
uio-howto.rst
vfio-mediated-device.rst vfio-mdev: remove an non-existing driver from vfio-mediated-device 2023-01-23 11:26:29 -07:00
vfio-pci-device-specific-driver-acceptance.rst
vfio.rst vfio: remove an extra semicolon 2024-05-10 11:15:21 -06:00
vme.rst vme: move back to staging 2022-06-10 15:38:14 +02:00
w1.rst
wbrf.rst Docs: typos/spelling 2024-05-02 10:02:29 -06:00
wmi.rst platform/x86: wmi: Move WMI core code into a separate directory 2025-11-18 11:18:11 +02:00
xillybus.rst
zorro.rst