Skip to content
Permalink
Browse files
xlink-core: Add Keem Bay XLink Core Module
XLink Core provides an abstracted control and communication
subsystem based on channel identification.
It is intended to support VPU technology both at SoC level as well as at
IP level, over multiple interfaces.

   Specifically the driver enables application/process to:

    * Access a common xLink API across all interfaces from both kernel and
      user space.
    * Call typical APIs types (open, close, read, write) that you would
      associate with a communication interface.
    * Call other APIs that are related to other functions that the
      device can perform e.g. boot, reset get/set device mode.  Device mode
      refers to the power load of the VPU and an API can be used to read and
      control it.
    * Use multiple commnication channels that the driver manages from one
      interface to another, providing routing of data through these multiple
      channels across a single physical interface.

Signed-off-by: Seamus Kelly <seamus.kelly@intel.com>
  • Loading branch information
seamusakelly authored and ranjan-dutta committed May 3, 2021
1 parent 1299bac commit da8a22c1d117dc7a34005542869efd709361b4d9
Show file tree
Hide file tree
Showing 14 changed files with 5,020 additions and 0 deletions.
@@ -481,4 +481,5 @@ source "drivers/misc/ocxl/Kconfig"
source "drivers/misc/cardreader/Kconfig"
source "drivers/misc/habanalabs/Kconfig"
source "drivers/misc/uacce/Kconfig"
source "drivers/misc/xlink-core/Kconfig"
endmenu
@@ -56,4 +56,5 @@ obj-$(CONFIG_PVPANIC) += pvpanic.o
obj-$(CONFIG_HABANA_AI) += habanalabs/
obj-$(CONFIG_UACCE) += uacce/
obj-$(CONFIG_XILINX_SDFEC) += xilinx_sdfec.o
obj-$(CONFIG_XLINK_CORE) += xlink-core/
obj-$(CONFIG_HISI_HIKEY_USB) += hisi_hikey_usb.o
@@ -0,0 +1,18 @@
config XLINK_CORE
tristate "Support for XLINK CORE"
depends on (XLINK_PCIE_LH_DRIVER || XLINK_PCIE_RH_DRIVER || XBAY_XLINK_PCIE_LH_DRIVER || XBAY_XLINK_PCIE_RH_DRIVER)
help
XLINK CORE enables the communication/control Sub-System.

config XLINK_LOCAL_HOST
tristate "Support for XLINK LOCAL HOST"
depends on XLINK_CORE && XLINK_IPC
help
XLINK LOCAL HOST enables local host functionality for
the communication/control Sub-System.

config XLINK_PSS
tristate "Support for XLINK PSS"
depends on XLINK_LOCAL_HOST
help
XLINK PSS enables the communication/control Sub-System on a PSS platform.
@@ -0,0 +1,5 @@
#
# Makefile for KeemBay xlink Linux driver
#
obj-$(CONFIG_XLINK_CORE) += xlink.o
xlink-objs += xlink-core.o xlink-multiplexer.o xlink-dispatcher.o xlink-platform.o

0 comments on commit da8a22c

Please sign in to comment.