linux_dsm_epyc7002/drivers/misc
Oded Gabbay 1251f23ae8 habanalabs: add event queue and interrupts
This patch adds support for receiving events from Goya's control CPU and
for receiving MSI-X interrupts from Goya's DMA engines and CPU.

Goya's PCI controller supports up to 8 MSI-X interrupts, which only 6 of
them are currently used. The first 5 interrupts are dedicated for Goya's
DMA engine queues. The 6th interrupt is dedicated for Goya's control CPU.

The DMA queue will signal its MSI-X entry upon each completion of a command
buffer that was placed on its primary queue. The driver will then mark that
CB as completed and free the related resources. It will also update the
command submission object which that CB belongs to.

There is a dedicated event queue (EQ) between the driver and Goya's control
CPU. The EQ is located on the Host memory. The control CPU writes a new
entry to the EQ for various reasons, such as ECC error, MMU page fault, Hot
temperature. After writing the new entry to the EQ, the control CPU will
trigger its dedicated MSI-X entry to signal the driver that there is a new
entry in the EQ. The driver will then read the entry and act accordingly.

Reviewed-by: Mike Rapoport <rppt@linux.ibm.com>
Signed-off-by: Oded Gabbay <oded.gabbay@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-02-18 09:46:45 +01:00
..
altera-stapl altera-stapl: check for a null key before strcasecmp'ing it 2018-11-27 08:44:07 +01:00
c2port
cardreader misc: alcor_pci: fix spelling mistake "invailid" -> "invalid" 2018-12-17 08:26:24 +01:00
cb710 cb710: Convert to new IDA API 2018-08-21 23:54:18 -04:00
cxl cxl: drop the dma_set_mask callback from vphb 2018-12-20 22:21:20 +11:00
echo misc: echo: Remove unnecessary parentheses and simplify check for zero 2018-09-25 20:21:02 +02:00
eeprom eeprom: at24: add support for 24c2048 2018-12-10 16:23:27 +01:00
genwqe cross-tree: phase out dma_zalloc_coherent() 2019-01-08 07:58:37 -05:00
habanalabs habanalabs: add event queue and interrupts 2019-02-18 09:46:45 +01:00
ibmasm ibmasm: don't write out of bounds in read handler 2018-07-07 09:59:35 +02:00
lis3lv02d
lkdtm lkdtm: change snprintf to scnprintf for possible overflow 2019-01-18 16:34:05 +01:00
mei mei: bus: export to_mei_cl_device for mei client devices drivers 2019-02-12 10:38:46 +01:00
mic Merge 5.0-rc6 into char-misc-next 2019-02-11 09:05:58 +01:00
ocxl ocxl: Fix endiannes bug in read_afu_name() 2018-12-21 14:46:50 +11:00
sgi-gru misc/sgi-gru/grufault: fix a style error 2019-01-18 16:34:06 +01:00
sgi-xp sgi-xp: Replace spin_is_locked() with lockdep 2018-10-15 20:54:17 +02:00
ti-st misc: ti-st: make array read_ver_cmd static, shrinks object size 2018-12-06 15:53:15 +01:00
vmw_vmci Remove 'type' argument from access_ok() function 2019-01-03 18:57:57 -08:00
ad525x_dpot-i2c.c drivers: misc: ad525x_dpot: Update MODULE AUTHOR email address 2018-09-14 15:36:20 +02:00
ad525x_dpot-spi.c drivers: misc: ad525x_dpot: Update MODULE AUTHOR email address 2018-09-14 15:36:20 +02:00
ad525x_dpot.c drivers: misc: ad525x_dpot: clean indentation issue, remove tabs 2019-01-18 16:34:05 +01:00
ad525x_dpot.h
apds990x.c misc: apds990x: remove unused array ir_currents 2018-09-12 09:46:46 +02:00
apds9802als.c
aspeed-lpc-ctrl.c
aspeed-lpc-snoop.c drivers/misc: Aspeed LPC snoop output using misc chardev 2018-07-16 13:30:47 +02:00
atmel_tclib.c
atmel-ssc.c misc: atmel-ssc: Fix section annotation on atmel_ssc_get_driver_data 2018-11-11 09:13:19 -08:00
bh1770glc.c misc: bh1770glc: remove unused array prox_curr_ma 2018-09-12 09:46:46 +02:00
cs5535-mfgpt.c
ds1682.c
dummy-irq.c
enclosure.c misc: enclosure: Use struct_size() in kzalloc() 2019-01-18 16:34:06 +01:00
fastrpc.c misc: fastrpc: Add support for dmabuf exporter 2019-02-12 10:40:30 +01:00
fsa9480.c
hmc6352.c misc: hmc6352: fix potential Spectre v1 2018-09-12 09:31:00 +02:00
hpilo.c
hpilo.h
ibmvmc.c misc: ibmvsm: Fix potential NULL pointer dereference 2019-01-18 14:14:14 +01:00
ibmvmc.h
ics932s401.c misc/ics932s401: Add a missing check to i2c_smbus_read_word_data 2019-01-18 16:34:06 +01:00
ioc4.c
isl29003.c
isl29020.c
Kconfig habanalabs: add skeleton driver 2019-02-18 09:46:43 +01:00
kgdbts.c misc: kgdbts: Fix restrict error 2018-09-25 20:21:02 +02:00
lattice-ecp3-config.c
Makefile habanalabs: add skeleton driver 2019-02-18 09:46:43 +01:00
pch_phub.c
pci_endpoint_test.c pci_endpoint_test: Add 2 ioctl commands 2018-07-19 11:46:57 +01:00
phantom.c
pti.c
pvpanic.c misc: pvpanic: fix warning implicit declaration 2019-01-18 16:42:05 +01:00
qcom-coincell.c
spear13xx_pcie_gadget.c
sram-exec.c
sram.c misc: sram: remove redundant null pointer check before of_node_put 2018-09-25 20:20:59 +02:00
sram.h
tifm_7xx1.c
tifm_core.c
tsl2550.c tsl2550: fix lux1_input error in low light 2018-07-07 17:44:52 +02:00
vexpress-syscfg.c misc: vexpress: Off by one in vexpress_syscfg_exec() 2018-12-06 15:42:18 +01:00
vmw_balloon.c vmw_balloon: release lock on error in vmballoon_reset() 2019-02-12 10:38:47 +01:00