/linux-6.6.21/drivers/cdx/controller/ |
D | cdx_controller.c | 18 static unsigned int cdx_mcdi_rpc_timeout(struct cdx_mcdi *cdx, unsigned int cmd) in cdx_mcdi_rpc_timeout() argument 23 static void cdx_mcdi_request(struct cdx_mcdi *cdx, in cdx_mcdi_request() argument 27 if (cdx_rpmsg_send(cdx, hdr, hdr_len, sdu, sdu_len)) in cdx_mcdi_request() 28 dev_err(&cdx->rpdev->dev, "Failed to send rpmsg data\n"); in cdx_mcdi_request() 36 void cdx_rpmsg_post_probe(struct cdx_controller *cdx) in cdx_rpmsg_post_probe() argument 39 if (cdx_register_controller(cdx)) in cdx_rpmsg_post_probe() 40 dev_err(cdx->dev, "Failed to register CDX controller\n"); in cdx_rpmsg_post_probe() 43 void cdx_rpmsg_pre_remove(struct cdx_controller *cdx) in cdx_rpmsg_pre_remove() argument 45 cdx_unregister_controller(cdx); in cdx_rpmsg_pre_remove() 46 cdx_mcdi_wait_for_quiescence(cdx->priv, MCDI_RPC_TIMEOUT); in cdx_rpmsg_pre_remove() [all …]
|
D | mcdi.c | 34 static void cdx_mcdi_cancel_cmd(struct cdx_mcdi *cdx, struct cdx_mcdi_cmd *cmd); 35 static void cdx_mcdi_wait_for_cleanup(struct cdx_mcdi *cdx); 36 static int cdx_mcdi_rpc_async_internal(struct cdx_mcdi *cdx, 52 static void cdx_mcdi_mode_fail(struct cdx_mcdi *cdx, struct list_head *cleanup_list); 53 static void _cdx_mcdi_display_error(struct cdx_mcdi *cdx, unsigned int cmd, 98 static unsigned long cdx_mcdi_rpc_timeout(struct cdx_mcdi *cdx, unsigned int cmd) in cdx_mcdi_rpc_timeout() argument 100 if (!cdx->mcdi_ops->mcdi_rpc_timeout) in cdx_mcdi_rpc_timeout() 103 return cdx->mcdi_ops->mcdi_rpc_timeout(cdx, cmd); in cdx_mcdi_rpc_timeout() 106 int cdx_mcdi_init(struct cdx_mcdi *cdx) in cdx_mcdi_init() argument 111 cdx->mcdi = kzalloc(sizeof(*cdx->mcdi), GFP_KERNEL); in cdx_mcdi_init() [all …]
|
D | mcdi.h | 83 void (*mcdi_request)(struct cdx_mcdi *cdx, 86 unsigned int (*mcdi_rpc_timeout)(struct cdx_mcdi *cdx, unsigned int cmd); 89 typedef void cdx_mcdi_async_completer(struct cdx_mcdi *cdx, 158 struct cdx_mcdi *cdx; member 183 static inline struct cdx_mcdi_iface *cdx_mcdi_if(struct cdx_mcdi *cdx) in cdx_mcdi_if() argument 185 return cdx->mcdi ? &cdx->mcdi->iface : NULL; in cdx_mcdi_if() 188 int cdx_mcdi_init(struct cdx_mcdi *cdx); 189 void cdx_mcdi_finish(struct cdx_mcdi *cdx); 191 void cdx_mcdi_process_cmd(struct cdx_mcdi *cdx, struct cdx_dword *outbuf, int len); 192 int cdx_mcdi_rpc(struct cdx_mcdi *cdx, unsigned int cmd, [all …]
|
D | mcdi_functions.c | 11 int cdx_mcdi_get_num_buses(struct cdx_mcdi *cdx) in cdx_mcdi_get_num_buses() argument 17 ret = cdx_mcdi_rpc(cdx, MC_CMD_CDX_BUS_ENUM_BUSES, NULL, 0, in cdx_mcdi_get_num_buses() 28 int cdx_mcdi_get_num_devs(struct cdx_mcdi *cdx, int bus_num) in cdx_mcdi_get_num_devs() argument 37 ret = cdx_mcdi_rpc(cdx, MC_CMD_CDX_BUS_ENUM_DEVICES, inbuf, sizeof(inbuf), in cdx_mcdi_get_num_devs() 48 int cdx_mcdi_get_dev_config(struct cdx_mcdi *cdx, in cdx_mcdi_get_dev_config() argument 62 ret = cdx_mcdi_rpc(cdx, MC_CMD_CDX_BUS_GET_DEVICE_CONFIG, inbuf, sizeof(inbuf), in cdx_mcdi_get_dev_config() 127 int cdx_mcdi_reset_device(struct cdx_mcdi *cdx, u8 bus_num, u8 dev_num) in cdx_mcdi_reset_device() argument 135 ret = cdx_mcdi_rpc(cdx, MC_CMD_CDX_DEVICE_RESET, inbuf, sizeof(inbuf), in cdx_mcdi_reset_device()
|
D | mcdi_functions.h | 22 int cdx_mcdi_get_num_buses(struct cdx_mcdi *cdx); 32 int cdx_mcdi_get_num_devs(struct cdx_mcdi *cdx, int bus_num); 46 int cdx_mcdi_get_dev_config(struct cdx_mcdi *cdx, 58 int cdx_mcdi_reset_device(struct cdx_mcdi *cdx,
|
D | Makefile | 8 obj-$(CONFIG_CDX_CONTROLLER) += cdx-controller.o 9 cdx-controller-objs := cdx_controller.o cdx_rpmsg.o mcdi.o mcdi_functions.o
|
D | cdx_controller.h | 14 void cdx_rpmsg_post_probe(struct cdx_controller *cdx); 16 void cdx_rpmsg_pre_remove(struct cdx_controller *cdx);
|
/linux-6.6.21/drivers/cdx/ |
D | cdx.c | 85 struct cdx_controller *cdx = cdx_dev->cdx; in cdx_dev_reset() local 96 ret = cdx->ops->dev_configure(cdx, cdx_dev->bus_num, in cdx_dev_reset() 386 struct cdx_controller *cdx; in rescan_store() local 400 xa_for_each(&cdx_controllers, index, cdx) { in rescan_store() 403 ret = cdx->ops->scan(cdx); in rescan_store() 405 dev_err(cdx->dev, "cdx bus scanning failed\n"); in rescan_store() 465 struct cdx_controller *cdx = dev_params->cdx; in cdx_device_add() local 466 struct device *parent = cdx->dev; in cdx_device_add() 485 cdx_dev->cdx = dev_params->cdx; in cdx_device_add() 497 ((cdx->id << CDX_CONTROLLER_ID_SHIFT) | (cdx_dev->bus_num & CDX_BUS_NUM_MASK)), in cdx_device_add() [all …]
|
D | cdx.h | 26 struct cdx_controller *cdx; member 43 int cdx_register_controller(struct cdx_controller *cdx); 49 void cdx_unregister_controller(struct cdx_controller *cdx);
|
D | Makefile | 8 obj-$(CONFIG_CDX_BUS) += cdx.o controller/
|
D | Kconfig | 19 source "drivers/cdx/controller/Kconfig"
|
/linux-6.6.21/Documentation/ABI/testing/ |
D | sysfs-bus-cdx | 1 What: /sys/bus/cdx/rescan 12 # echo 1 > /sys/bus/cdx/rescan 14 What: /sys/bus/cdx/devices/.../vendor 22 What: /sys/bus/cdx/devices/.../device 31 What: /sys/bus/cdx/devices/.../reset 42 # echo 1 > /sys/bus/cdx/.../reset 44 What: /sys/bus/cdx/devices/.../remove 56 # echo 1 > /sys/bus/cdx/devices/.../remove
|
/linux-6.6.21/include/linux/cdx/ |
D | cdx_bus.h | 31 typedef int (*cdx_scan_cb)(struct cdx_controller *cdx); 33 typedef int (*cdx_dev_configure_cb)(struct cdx_controller *cdx, 95 struct cdx_controller *cdx; member
|
/linux-6.6.21/drivers/vfio/cdx/ |
D | Makefile | 6 obj-$(CONFIG_VFIO_CDX) += vfio-cdx.o 8 vfio-cdx-objs := main.o
|
D | main.c | 218 MODULE_DEVICE_TABLE(cdx, vfio_cdx_table);
|
/linux-6.6.21/Documentation/devicetree/bindings/bus/ |
D | xlnx,versal-net-cdx.yaml | 4 $id: http://devicetree.org/schemas/bus/xlnx,versal-net-cdx.yaml# 39 const: xlnx,versal-net-cdx 72 cdx { 73 compatible = "xlnx,versal-net-cdx";
|
/linux-6.6.21/drivers/vfio/ |
D | Makefile | 18 obj-$(CONFIG_VFIO_CDX) += cdx/
|
D | Kconfig | 87 source "drivers/vfio/cdx/Kconfig"
|
/linux-6.6.21/arch/nios2/ |
D | Makefile | 32 KBUILD_CFLAGS += $(if $(CONFIG_NIOS2_CDX_SUPPORT),-mcdx,-mno-cdx)
|
/linux-6.6.21/drivers/ |
D | Makefile | 199 obj-$(CONFIG_CDX_BUS) += cdx/
|
D | Kconfig | 244 source "drivers/cdx/Kconfig"
|
/linux-6.6.21/ |
D | MAINTAINERS | 898 F: Documentation/devicetree/bindings/bus/xlnx,versal-net-cdx.yaml 899 F: drivers/cdx/* 900 F: include/linux/cdx/* 22583 F: drivers/vfio/cdx/*
|