[PATCH v2 0/5] accel/ivpu: Replace IPC kthread with threaded IRQ

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Use threaded IRQ to handle incoming IPC messages. IPC consumers can now
provide optional callback that will be executed once message is received.
This allows to handle multiple message types in a generic manner.

Removing kthread also simplifies synchronization as disable_irq() will block
until all pending messages are handled.

v2:
  - Don't do bit operations on enum irqreturn

v1: https://lore.kernel.org/all/20231107123514.2218850-1-jacek.lawrynowicz@xxxxxxxxxxxxxxx

Jacek Lawrynowicz (1):
  accel/ivpu: Use threaded IRQ to handle JOB done messages

Stanislaw Gruszka (4):
  accel/ivpu: Rename cons->rx_msg_lock
  accel/ivpu: Do not use irqsave in ivpu_ipc_dispatch
  accel/ivpu: Do not use cons->aborted for job_done_thread
  accel/ivpu: Use dedicated work for job timeout detection

 drivers/accel/ivpu/ivpu_drv.c     |  30 ++--
 drivers/accel/ivpu/ivpu_drv.h     |   3 +-
 drivers/accel/ivpu/ivpu_hw_37xx.c |  29 ++--
 drivers/accel/ivpu/ivpu_hw_40xx.c |  30 ++--
 drivers/accel/ivpu/ivpu_ipc.c     | 223 +++++++++++++++++-------------
 drivers/accel/ivpu/ivpu_ipc.h     |  24 +++-
 drivers/accel/ivpu/ivpu_job.c     |  99 +++----------
 drivers/accel/ivpu/ivpu_job.h     |   6 +-
 drivers/accel/ivpu/ivpu_pm.c      |  31 +++++
 drivers/accel/ivpu/ivpu_pm.h      |   3 +
 10 files changed, 251 insertions(+), 227 deletions(-)

--
2.42.0



[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux