Commit 2959ab24 authored by Nipun Gupta's avatar Nipun Gupta Committed by Greg Kroah-Hartman
Browse files

cdx: add the cdx bus driver



Introduce AMD CDX bus, which provides a mechanism for scanning
and probing CDX devices. These devices are memory mapped on
system bus for Application Processors(APUs).

CDX devices can be changed dynamically in the Fabric and CDX
bus interacts with CDX controller to rescan the bus and
rediscover the devices.

Signed-off-by: default avatarNipun Gupta <nipun.gupta@amd.com>
Reviewed-by: default avatarPieter Jansen van Vuuren <pieter.jansen-van-vuuren@amd.com>
Tested-by: default avatarNikhil Agarwal <nikhil.agarwal@amd.com>
Link: https://lore.kernel.org/r/20230313132636.31850-2-nipun.gupta@amd.com


Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 71d74aaa
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
What:		/sys/bus/cdx/rescan
Date:		March 2023
Contact:	nipun.gupta@amd.com
Description:
		Writing y/1/on to this file will cause rescan of the bus
		and devices on the CDX bus. Any new devices are scanned and
		added to the list of Linux devices and any devices removed are
		also deleted from Linux.

		For example::

		  # echo 1 > /sys/bus/cdx/rescan
+7 −0
Original line number Diff line number Diff line
@@ -964,6 +964,13 @@ Q: https://patchwork.kernel.org/project/linux-rdma/list/
F:	drivers/infiniband/hw/efa/
F:	include/uapi/rdma/efa-abi.h
AMD CDX BUS DRIVER
M:	Nipun Gupta <nipun.gupta@amd.com>
M:	Nikhil Agarwal <nikhil.agarwal@amd.com>
S:	Maintained
F:	drivers/cdx/*
F:	include/linux/cdx/*
AMD CRYPTOGRAPHIC COPROCESSOR (CCP) DRIVER
M:	Tom Lendacky <thomas.lendacky@amd.com>
M:	John Allen <john.allen@amd.com>
+2 −0
Original line number Diff line number Diff line
@@ -241,4 +241,6 @@ source "drivers/peci/Kconfig"

source "drivers/hte/Kconfig"

source "drivers/cdx/Kconfig"

endmenu
+1 −0
Original line number Diff line number Diff line
@@ -194,3 +194,4 @@ obj-$(CONFIG_MOST) += most/
obj-$(CONFIG_PECI)		+= peci/
obj-$(CONFIG_HTE)		+= hte/
obj-$(CONFIG_DRM_ACCEL)		+= accel/
obj-$(CONFIG_CDX_BUS)		+= cdx/

drivers/cdx/Kconfig

0 → 100644
+17 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0
#
# CDX bus configuration
#
# Copyright (C) 2022-2023, Advanced Micro Devices, Inc.
#

config CDX_BUS
	bool "CDX Bus driver"
	depends on OF && ARM64
	help
	  Driver to enable Composable DMA Transfer(CDX) Bus. CDX bus
	  exposes Fabric devices which uses composable DMA IP to the
	  APU. CDX bus provides a mechanism for scanning and probing
	  of CDX devices. CDX devices are memory mapped on system bus
	  for embedded CPUs. CDX bus uses CDX controller and firmware
	  to scan these CDX devices.
Loading