History log of /linux-master/drivers/gpu/drm/nouveau/nvkm/falcon/cmdq.c
Revision Date Author Comments
# 2541626c 01-Jun-2022 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/acr: use common falcon HS FW code for ACR FWs

Adds context binding and support for FWs with a bootloader to the code
that was added to load VPR scrubber HS binaries, and ports ACR over to
using all of it.

- gv100 split from gp108 to handle FW exit status differences

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Reviewed-by: Lyude Paul <lyude@redhat.com>


# b448a266 09-Jun-2020 Timur Tabi <ttabi@nvidia.com>

drm/nouveau/nvfw: firmware structures should begin with nvfw_

Rename all structures that are used directly by firmware to have a nvfw_
prefix.

This makes it easier to identify structures that have a fixed, specific
layout. A future patch will define several more such structures, so it's
important to be consistent now.

Signed-off-by: Timur Tabi <ttabi@nvidia.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>


# 25fd061c 14-Jan-2020 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/flcn/cmdq: rename cmdq-related nvkm_msqqueue_queue to nvkm_falcon_cmdq

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>


# 14974525 14-Jan-2020 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/flcn/cmdq: implement a more explicit send() interface

Takes the command queue pointer directly instead of requiring a function to
lookup based on an queue type, as well as an explicit timeout value.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>


# 2b287aeb 14-Jan-2020 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/flcn/cmdq: drop nvkm_msgqueue argument to functions

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>


# baafecbf 14-Jan-2020 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/flcn/cmdq: switch to falcon queue printk macros

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>


# c2c9b243 14-Jan-2020 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/flcn/cmdq: cmd_queue_close always commits, simplify it

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>


# 2baaffff 14-Jan-2020 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/flcn/cmdq: cmd_queue_push can't fail, remove error handling for it

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>


# 2e8a6597 14-Jan-2020 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/flcn/cmdq: split the condition for queue readiness vs pmu acr readiness

This is to allow for proper separation of the LS interface code from the
queue handling code.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>


# a15d8f58 14-Jan-2020 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/flcn/qmgr: rename remaining nvkm_msgqueue bits to nvkm_falcon_qmgr

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>


# 8e90a98d 14-Jan-2020 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/flcn/qmgr: support syncronous command submission from common code

Functions implementing FW commands had to implement this themselves, let's
move that to common code and plumb the return code from callbacks through.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>


# c80157a2 14-Jan-2020 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/flcn/qmgr: allow arbtrary priv + return code for callbacks

Code to interface with LS firmwares is being moved to the subdevs where it
belongs, rather than living in the common falcon code.

Arbitrary private data passed to callbacks is to allow for something other
than struct nvkm_msgqueue to be passed into the callback (like the pointer
to the subdev itself, for example), and the return code will be used where
we'd like to detect failure from synchronous messages.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>


# 0ae59432 14-Jan-2020 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/flcn/qmgr: move sequence tracking from nvkm_msgqueue to nvkm_falcon_qmgr

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>


# acc466ab 14-Jan-2020 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/flcn/cmdq: explicitly create command queue(s) from subdevs

Code to interface with LS firmwares is being moved to the subdevs where it
belongs, rather than living in the common falcon code.

This is an incremental step towards that goal.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>


# 7e1659cc 14-Jan-2020 Ben Skeggs <bskeggs@redhat.com>

drm/nouveau/flcn: split msgqueue into multiple pieces

To make things clearer while modifying the interfaces, split msgqueue into
Queue Manager, Command Queue, and Message Queue.

There should be no code changes here, these will be done incrementally.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>