mbox series

[git,pull] drm nouveau support for GSP firmware - optional

Message ID CAPM=9txa=48madkU8QgcVzmU9EBvThNM_dU-1meEhtrsgF8iPA@mail.gmail.com (mailing list archive)
State New, archived
Headers show
Series [git,pull] drm nouveau support for GSP firmware - optional | expand

Pull-request

git://anongit.freedesktop.org/drm/drm tags/topic/nvidia-gsp-2023-11-03

Message

Dave Airlie Nov. 3, 2023, 3:16 a.m. UTC
Hi Linus,

As I mentioned in my main pullreq I had a chancy optional nouveau one
that is delayed after Ben's departure, but I'd really like to land
support for the NVIDIA Ada chips and this is the only way that can
happen. This new firmware supports Turing/Ampere/Ada, but it's off by
default to the Turing/Ampere cards, so this shouldn't have any
regressions due to it only being used by default on some very new
GPUs, that mostly will run the binary driver anyways.

But if you feel 6.7 is baked enough and want to leave this hanging
until 6.8, I'm not gonna lose too much sleep, but I'd really like to
get a baseline for this into master so we can start concentrating on
figuring out how to improve it to move forward,

You might notice also this has a lot of header files, which are
extracts from the NVIDIA open code base, ideally in the future we
could reduce that or use some sort of generator instead of what we
have now, so I don't expect this to be a massive set of header files
each time we add new firmware.

Thanks,
Dave.

topic/nvidia-gsp-2023-11-03:
drm nouveau GSP support for 6.7-rc1

This is an optional pull request to add the initial
support for the NVIDIA GSP firmware to nouveau.

This firmware is a new direction for Turing+ GPUs,
and is only enabled by default on Ada generation.
Other generations need to use nouveau.config=NvGspRm=1

The GSP firmware takes nearly all the GPU init and
power management tasks onto a risc-v CPU on the GPU.

This patch series is mostly the work from Ben Skeggs,
and Dave added some patches to rebase it to the latest
firmware release which is where we will stay for as
long as possible as the firmwares have no ABI stability.
The following changes since commit 631808095a82e6b6f8410a95f8b12b8d0d38b161:

  Merge tag 'amd-drm-next-6.7-2023-10-27' of
https://gitlab.freedesktop.org/agd5f/linux into drm-next (2023-10-31
12:37:19 +1000)

are available in the Git repository at:

  git://anongit.freedesktop.org/drm/drm tags/topic/nvidia-gsp-2023-11-03

for you to fetch changes up to 8d55b0a940bb10592ffaad68d14314823ddf4cdf:

  nouveau/gsp: add some basic registry entries. (2023-11-03 12:57:23 +1000)

----------------------------------------------------------------
drm nouveau GSP support for 6.7-rc1

This is an optional pull request to add the initial
support for the NVIDIA GSP firmware to nouveau.

This firmware is a new direction for Turing+ GPUs,
and is only enabled by default on Ada generation.
Other generations need to use nouveau.config=NvGspRm=1

The GSP firmware takes nearly all the GPU init and
power management tasks onto a risc-v CPU on the GPU.

This patch series is mostly the work from Ben Skeggs,
and Dave added some patches to rebase it to the latest
firmware release which is where we will stay for as
long as possible as the firmwares have no ABI stability.

----------------------------------------------------------------
Ben Skeggs (44):
      drm/nouveau/mmu/tu102-: remove write to 0x100e68 during tlb invalidate
      drm/nouveau/nvkm: bump maximum number of NVDEC
      drm/nouveau/nvkm: bump maximum number of NVJPG
      drm/nouveau/gsp: prepare for GSP-RM
      drm/nouveau/acr/tu102-: prepare for GSP-RM
      drm/nouveau/bar/tu102-: prepare for GSP-RM
      drm/nouveau/bus/tu102-: prepare for GSP-RM
      drm/nouveau/devinit/tu102-: prepare for GSP-RM
      drm/nouveau/fault/tu102-: prepare for GSP-RM
      drm/nouveau/fb/tu102-: prepare for GSP-RM
      drm/nouveau/fuse/tu102-: prepare for GSP-RM
      drm/nouveau/gpio/tu102-: prepare for GSP-RM
      drm/nouveau/i2c/tu102-: prepare for GSP-RM
      drm/nouveau/imem/tu102-: prepare for GSP-RM
      drm/nouveau/ltc/tu102-: prepare for GSP-RM
      drm/nouveau/mc/tu102-: prepare for GSP-RM
      drm/nouveau/mmu/tu102-: prepare for GSP-RM
      drm/nouveau/pmu/tu102-: prepare for GSP-RM
      drm/nouveau/privring/tu102-: prepare for GSP-RM
      drm/nouveau/therm/tu102-: prepare for GSP-RM
      drm/nouveau/top/tu102-: prepare for GSP-RM
      drm/nouveau/vfn/tu102-: prepare for GSP-RM
      drm/nouveau/ce/tu102-: prepare for GSP-RM
      drm/nouveau/disp/tu102-: prepare for GSP-RM
      drm/nouveau/fifo/tu102-: prepare for GSP-RM
      drm/nouveau/gr/tu102-: prepare for GSP-RM
      drm/nouveau/nvdec/tu102-: prepare for GSP-RM
      drm/nouveau/nvenc/tu102-: prepare for GSP-RM
      drm/nouveau/sec2/tu102-: prepare for GSP-RM
      drm/nouveau/kms/tu102-: disable vbios parsing when running on RM
      drm/nouveau/nvkm: support loading fws into sg_table
      drm/nouveau/gsp/r535: add support for booting GSP-RM
      drm/nouveau/gsp/r535: add support for rm control
      drm/nouveau/gsp/r535: add support for rm alloc
      drm/nouveau/gsp/r535: add interrupt handling
      drm/nouveau/mmu/r535: initial support
      drm/nouveau/disp/r535: initial support
      drm/nouveau/fifo/r535: initial support
      drm/nouveau/ce/r535: initial support
      drm/nouveau/gr/r535: initial support
      drm/nouveau/nvdec/r535: initial support
      drm/nouveau/nvenc/r535: initial support
      drm/nouveau/nvjpg/r535: initial support
      drm/nouveau/ofa/r535: initial support

Dave Airlie (5):
      nouveau: fix r535 build on 32-bit arm.
      nouveau/disp: fix post-gsp build on 32-bit arm.
      nouveau/gsp: move to 535.113.01
      nouveau/gsp: fix message signature.
      nouveau/gsp: add some basic registry entries.

 drivers/gpu/drm/nouveau/dispnv50/core.c            |    1 +
 drivers/gpu/drm/nouveau/dispnv50/disp.c            |  143 ++
 drivers/gpu/drm/nouveau/include/nvif/cl0080.h      |    3 +
 drivers/gpu/drm/nouveau/include/nvif/class.h       |   21 +
 drivers/gpu/drm/nouveau/include/nvkm/core/device.h |    1 +
 drivers/gpu/drm/nouveau/include/nvkm/core/falcon.h |    7 +
 .../gpu/drm/nouveau/include/nvkm/core/firmware.h   |    6 +-
 drivers/gpu/drm/nouveau/include/nvkm/core/layout.h |    6 +-
 drivers/gpu/drm/nouveau/include/nvkm/engine/disp.h |   19 +
 .../gpu/drm/nouveau/include/nvkm/engine/falcon.h   |    4 +
 drivers/gpu/drm/nouveau/include/nvkm/engine/fifo.h |   19 +
 drivers/gpu/drm/nouveau/include/nvkm/engine/gr.h   |    1 +
 .../gpu/drm/nouveau/include/nvkm/engine/nvdec.h    |    3 +
 .../gpu/drm/nouveau/include/nvkm/engine/nvenc.h    |    3 +
 .../gpu/drm/nouveau/include/nvkm/engine/nvjpg.h    |    8 +
 drivers/gpu/drm/nouveau/include/nvkm/engine/ofa.h  |    9 +
 drivers/gpu/drm/nouveau/include/nvkm/subdev/bar.h  |    4 +
 drivers/gpu/drm/nouveau/include/nvkm/subdev/bios.h |    1 +
 drivers/gpu/drm/nouveau/include/nvkm/subdev/fb.h   |    6 +-
 drivers/gpu/drm/nouveau/include/nvkm/subdev/gsp.h  |  435 ++++
 .../gpu/drm/nouveau/include/nvkm/subdev/instmem.h  |    7 +
 drivers/gpu/drm/nouveau/include/nvkm/subdev/mmu.h  |   11 +
 .../common/sdk/nvidia/inc/alloc/alloc_channel.h    |  170 ++
 .../common/sdk/nvidia/inc/class/cl0000.h           |   38 +
 .../common/sdk/nvidia/inc/class/cl0005.h           |   38 +
 .../common/sdk/nvidia/inc/class/cl0080.h           |   43 +
 .../common/sdk/nvidia/inc/class/cl2080.h           |   35 +
 .../sdk/nvidia/inc/class/cl2080_notification.h     |   62 +
 .../common/sdk/nvidia/inc/class/cl84a0.h           |   33 +
 .../common/sdk/nvidia/inc/class/cl90f1.h           |   31 +
 .../common/sdk/nvidia/inc/class/clc0b5sw.h         |   34 +
 .../sdk/nvidia/inc/ctrl/ctrl0073/ctrl0073common.h  |   39 +
 .../sdk/nvidia/inc/ctrl/ctrl0073/ctrl0073dfp.h     |  166 ++
 .../sdk/nvidia/inc/ctrl/ctrl0073/ctrl0073dp.h      |  335 +++
 .../nvidia/inc/ctrl/ctrl0073/ctrl0073specific.h    |  216 ++
 .../sdk/nvidia/inc/ctrl/ctrl0073/ctrl0073system.h  |   65 +
 .../sdk/nvidia/inc/ctrl/ctrl0080/ctrl0080fifo.h    |   57 +
 .../sdk/nvidia/inc/ctrl/ctrl0080/ctrl0080gpu.h     |   48 +
 .../sdk/nvidia/inc/ctrl/ctrl0080/ctrl0080gr.h      |   31 +
 .../sdk/nvidia/inc/ctrl/ctrl2080/ctrl2080bios.h    |   40 +
 .../sdk/nvidia/inc/ctrl/ctrl2080/ctrl2080ce.h      |   35 +
 .../sdk/nvidia/inc/ctrl/ctrl2080/ctrl2080event.h   |   41 +
 .../sdk/nvidia/inc/ctrl/ctrl2080/ctrl2080fb.h      |   51 +
 .../sdk/nvidia/inc/ctrl/ctrl2080/ctrl2080fifo.h    |   52 +
 .../sdk/nvidia/inc/ctrl/ctrl2080/ctrl2080gpu.h     |  100 +
 .../sdk/nvidia/inc/ctrl/ctrl2080/ctrl2080gr.h      |   41 +
 .../nvidia/inc/ctrl/ctrl2080/ctrl2080internal.h    |  162 ++
 .../common/sdk/nvidia/inc/ctrl/ctrl90f1.h          |   95 +
 .../sdk/nvidia/inc/ctrl/ctrla06f/ctrla06fgpfifo.h  |   42 +
 .../535.113.01/common/sdk/nvidia/inc/nvlimits.h    |   33 +
 .../nvrm/535.113.01/common/sdk/nvidia/inc/nvos.h   |  148 ++
 .../common/shared/msgq/inc/msgq/msgq_priv.h        |   46 +
 .../uproc/os/common/include/libos_init_args.h      |   52 +
 .../arch/nvalloc/common/inc/gsp/gsp_fw_sr_meta.h   |   79 +
 .../arch/nvalloc/common/inc/gsp/gsp_fw_wpr_meta.h  |  170 ++
 .../nvidia/arch/nvalloc/common/inc/rmRiscvUcode.h  |   82 +
 .../nvidia/arch/nvalloc/common/inc/rmgspseq.h      |  100 +
 .../535.113.01/nvidia/generated/g_allclasses.h     |   33 +
 .../535.113.01/nvidia/generated/g_chipset_nvoc.h   |   38 +
 .../nvrm/535.113.01/nvidia/generated/g_fbsr_nvoc.h |   31 +
 .../nvrm/535.113.01/nvidia/generated/g_gpu_nvoc.h  |   35 +
 .../nvidia/generated/g_kernel_channel_nvoc.h       |   62 +
 .../nvidia/generated/g_kernel_fifo_nvoc.h          |  119 ++
 .../535.113.01/nvidia/generated/g_mem_desc_nvoc.h  |   32 +
 .../nvrm/535.113.01/nvidia/generated/g_os_nvoc.h   |   44 +
 .../535.113.01/nvidia/generated/g_rpc-structures.h |  124 ++
 .../535.113.01/nvidia/generated/g_sdk-structures.h |   45 +
 .../nvidia/inc/kernel/gpu/gpu_acpi_data.h          |   74 +
 .../nvidia/inc/kernel/gpu/gpu_engine_type.h        |   86 +
 .../nvidia/inc/kernel/gpu/gsp/gsp_fw_heap.h        |   33 +
 .../nvidia/inc/kernel/gpu/gsp/gsp_init_args.h      |   57 +
 .../nvidia/inc/kernel/gpu/gsp/gsp_static_config.h  |  174 ++
 .../nvidia/inc/kernel/gpu/intr/engine_idx.h        |   57 +
 .../535.113.01/nvidia/inc/kernel/gpu/nvbitmask.h   |   33 +
 .../nvidia/inc/kernel/os/nv_memory_type.h          |   31 +
 .../nvidia/kernel/inc/vgpu/rpc_global_enums.h      |  262 +++
 .../nvidia/kernel/inc/vgpu/rpc_headers.h           |   51 +
 .../nvidia/kernel/inc/vgpu/sdk-structures.h        |   40 +
 drivers/gpu/drm/nouveau/include/nvrm/nvtypes.h     |   24 +
 drivers/gpu/drm/nouveau/nouveau_bios.c             |    5 +-
 drivers/gpu/drm/nouveau/nvif/disp.c                |    1 +
 drivers/gpu/drm/nouveau/nvkm/core/firmware.c       |   74 +-
 drivers/gpu/drm/nouveau/nvkm/engine/Kbuild         |    2 +
 drivers/gpu/drm/nouveau/nvkm/engine/ce/Kbuild      |    2 +
 drivers/gpu/drm/nouveau/nvkm/engine/ce/ga100.c     |    4 +
 drivers/gpu/drm/nouveau/nvkm/engine/ce/ga102.c     |    5 +
 drivers/gpu/drm/nouveau/nvkm/engine/ce/priv.h      |    3 +
 drivers/gpu/drm/nouveau/nvkm/engine/ce/r535.c      |  108 +
 drivers/gpu/drm/nouveau/nvkm/engine/ce/tu102.c     |    5 +
 drivers/gpu/drm/nouveau/nvkm/engine/device/base.c  |  190 +-
 drivers/gpu/drm/nouveau/nvkm/engine/device/priv.h  |    2 +
 drivers/gpu/drm/nouveau/nvkm/engine/device/user.c  |    1 +
 drivers/gpu/drm/nouveau/nvkm/engine/disp/Kbuild    |    3 +
 drivers/gpu/drm/nouveau/nvkm/engine/disp/ad102.c   |   52 +
 drivers/gpu/drm/nouveau/nvkm/engine/disp/base.c    |    8 +-
 drivers/gpu/drm/nouveau/nvkm/engine/disp/chan.h    |    4 +
 drivers/gpu/drm/nouveau/nvkm/engine/disp/ga102.c   |    4 +
 drivers/gpu/drm/nouveau/nvkm/engine/disp/gf119.c   |    2 +-
 drivers/gpu/drm/nouveau/nvkm/engine/disp/gv100.c   |    6 +-
 drivers/gpu/drm/nouveau/nvkm/engine/disp/ior.h     |    2 +
 drivers/gpu/drm/nouveau/nvkm/engine/disp/nv50.c    |    2 +-
 drivers/gpu/drm/nouveau/nvkm/engine/disp/outp.c    |    3 +-
 drivers/gpu/drm/nouveau/nvkm/engine/disp/priv.h    |   14 +-
 drivers/gpu/drm/nouveau/nvkm/engine/disp/r535.c    | 1671 +++++++++++++++
 drivers/gpu/drm/nouveau/nvkm/engine/disp/tu102.c   |    4 +
 drivers/gpu/drm/nouveau/nvkm/engine/disp/uconn.c   |   31 +-
 drivers/gpu/drm/nouveau/nvkm/engine/falcon.c       |    4 +-
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/Kbuild    |    2 +
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/base.c    |   11 +
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/cgrp.c    |    3 +
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/chan.c    |   55 +-
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/chan.h    |    3 +
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/ga100.c   |    4 +
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/ga102.c   |    7 +-
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/priv.h    |    4 +
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/r535.c    |  664 ++++++
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/runl.h    |    6 +
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/tu102.c   |    4 +
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/uchan.c   |    9 +
 drivers/gpu/drm/nouveau/nvkm/engine/gr/Kbuild      |    3 +
 drivers/gpu/drm/nouveau/nvkm/engine/gr/ad102.c     |   46 +
 drivers/gpu/drm/nouveau/nvkm/engine/gr/base.c      |    6 +-
 drivers/gpu/drm/nouveau/nvkm/engine/gr/ga102.c     |    4 +
 drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.h     |    2 +
 drivers/gpu/drm/nouveau/nvkm/engine/gr/r535.c      |  508 +++++
 drivers/gpu/drm/nouveau/nvkm/engine/gr/tu102.c     |    5 +
 drivers/gpu/drm/nouveau/nvkm/engine/nvdec/Kbuild   |    5 +
 drivers/gpu/drm/nouveau/nvkm/engine/nvdec/ad102.c  |   44 +
 drivers/gpu/drm/nouveau/nvkm/engine/nvdec/base.c   |    3 +-
 drivers/gpu/drm/nouveau/nvkm/engine/nvdec/ga100.c  |   44 +
 drivers/gpu/drm/nouveau/nvkm/engine/nvdec/ga102.c  |   16 +-
 drivers/gpu/drm/nouveau/nvkm/engine/nvdec/gm107.c  |    2 +-
 drivers/gpu/drm/nouveau/nvkm/engine/nvdec/priv.h   |    7 +
 drivers/gpu/drm/nouveau/nvkm/engine/nvdec/r535.c   |  110 +
 drivers/gpu/drm/nouveau/nvkm/engine/nvdec/tu102.c  |   44 +
 drivers/gpu/drm/nouveau/nvkm/engine/nvenc/Kbuild   |    5 +
 drivers/gpu/drm/nouveau/nvkm/engine/nvenc/ad102.c  |   44 +
 drivers/gpu/drm/nouveau/nvkm/engine/nvenc/base.c   |    3 +-
 drivers/gpu/drm/nouveau/nvkm/engine/nvenc/ga102.c  |   44 +
 drivers/gpu/drm/nouveau/nvkm/engine/nvenc/gm107.c  |    2 +-
 drivers/gpu/drm/nouveau/nvkm/engine/nvenc/priv.h   |    5 +
 drivers/gpu/drm/nouveau/nvkm/engine/nvenc/r535.c   |  110 +
 drivers/gpu/drm/nouveau/nvkm/engine/nvenc/tu102.c  |   44 +
 drivers/gpu/drm/nouveau/nvkm/engine/nvjpg/Kbuild   |    5 +
 drivers/gpu/drm/nouveau/nvkm/engine/nvjpg/ad102.c  |   44 +
 drivers/gpu/drm/nouveau/nvkm/engine/nvjpg/ga100.c  |   44 +
 drivers/gpu/drm/nouveau/nvkm/engine/nvjpg/priv.h   |    8 +
 drivers/gpu/drm/nouveau/nvkm/engine/nvjpg/r535.c   |  107 +
 drivers/gpu/drm/nouveau/nvkm/engine/ofa/Kbuild     |    6 +
 drivers/gpu/drm/nouveau/nvkm/engine/ofa/ad102.c    |   44 +
 drivers/gpu/drm/nouveau/nvkm/engine/ofa/ga100.c    |   44 +
 drivers/gpu/drm/nouveau/nvkm/engine/ofa/ga102.c    |   44 +
 drivers/gpu/drm/nouveau/nvkm/engine/ofa/priv.h     |    8 +
 drivers/gpu/drm/nouveau/nvkm/engine/ofa/r535.c     |  107 +
 drivers/gpu/drm/nouveau/nvkm/engine/sec2/Kbuild    |    2 +
 drivers/gpu/drm/nouveau/nvkm/engine/sec2/ga102.c   |    8 +-
 drivers/gpu/drm/nouveau/nvkm/engine/sec2/priv.h    |    3 +
 drivers/gpu/drm/nouveau/nvkm/engine/sec2/r535.c    |   54 +
 drivers/gpu/drm/nouveau/nvkm/engine/sec2/tu102.c   |    8 +-
 drivers/gpu/drm/nouveau/nvkm/falcon/Kbuild         |    1 +
 drivers/gpu/drm/nouveau/nvkm/falcon/base.c         |   16 +
 drivers/gpu/drm/nouveau/nvkm/falcon/ga100.c        |    6 +
 drivers/gpu/drm/nouveau/nvkm/falcon/ga102.c        |    6 +
 drivers/gpu/drm/nouveau/nvkm/falcon/tu102.c        |   28 +
 drivers/gpu/drm/nouveau/nvkm/subdev/acr/ga102.c    |    4 +
 drivers/gpu/drm/nouveau/nvkm/subdev/acr/tu102.c    |    3 +
 drivers/gpu/drm/nouveau/nvkm/subdev/bar/Kbuild     |    2 +
 drivers/gpu/drm/nouveau/nvkm/subdev/bar/base.c     |   10 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/bar/priv.h     |    3 +
 drivers/gpu/drm/nouveau/nvkm/subdev/bar/r535.c     |  186 ++
 drivers/gpu/drm/nouveau/nvkm/subdev/bar/tu102.c    |    4 +
 drivers/gpu/drm/nouveau/nvkm/subdev/bios/base.c    |    8 +
 drivers/gpu/drm/nouveau/nvkm/subdev/bus/gf100.c    |    5 +
 drivers/gpu/drm/nouveau/nvkm/subdev/devinit/Kbuild |    2 +
 .../gpu/drm/nouveau/nvkm/subdev/devinit/ga100.c    |   15 +
 drivers/gpu/drm/nouveau/nvkm/subdev/devinit/priv.h |    3 +
 drivers/gpu/drm/nouveau/nvkm/subdev/devinit/r535.c |   51 +
 .../gpu/drm/nouveau/nvkm/subdev/devinit/tu102.c    |    4 +
 drivers/gpu/drm/nouveau/nvkm/subdev/fault/tu102.c  |    8 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/Kbuild      |    2 +
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ga100.c     |    5 +
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ga102.c     |    4 +
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/priv.h      |    3 +
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/r535.c      |   87 +
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ram.c       |   46 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/tu102.c     |    5 +
 drivers/gpu/drm/nouveau/nvkm/subdev/fuse/gm107.c   |    5 +
 drivers/gpu/drm/nouveau/nvkm/subdev/gpio/ga102.c   |    5 +
 drivers/gpu/drm/nouveau/nvkm/subdev/gpio/gk104.c   |    5 +
 drivers/gpu/drm/nouveau/nvkm/subdev/gsp/Kbuild     |    8 +
 drivers/gpu/drm/nouveau/nvkm/subdev/gsp/ad102.c    |   57 +
 drivers/gpu/drm/nouveau/nvkm/subdev/gsp/base.c     |   78 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/gsp/fwsec.c    |  359 ++++
 drivers/gpu/drm/nouveau/nvkm/subdev/gsp/ga100.c    |   74 +
 drivers/gpu/drm/nouveau/nvkm/subdev/gsp/ga102.c    |  148 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/gsp/gv100.c    |    4 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/gsp/priv.h     |   57 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/gsp/r535.c     | 2236 ++++++++++++++++++++
 drivers/gpu/drm/nouveau/nvkm/subdev/gsp/tu102.c    |  198 ++
 drivers/gpu/drm/nouveau/nvkm/subdev/gsp/tu116.c    |   57 +
 drivers/gpu/drm/nouveau/nvkm/subdev/i2c/gm200.c    |    5 +
 drivers/gpu/drm/nouveau/nvkm/subdev/instmem/Kbuild |    2 +
 drivers/gpu/drm/nouveau/nvkm/subdev/instmem/base.c |   40 +-
 .../gpu/drm/nouveau/nvkm/subdev/instmem/gk20a.c    |    2 +
 drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv04.c |   45 +
 drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c |   27 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/instmem/priv.h |   13 +
 drivers/gpu/drm/nouveau/nvkm/subdev/instmem/r535.c |  333 +++
 drivers/gpu/drm/nouveau/nvkm/subdev/ltc/ga102.c    |    5 +
 drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gp102.c    |    5 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mc/ga100.c     |    5 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mc/gp100.c     |    5 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/Kbuild     |    2 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/base.c     |    4 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/priv.h     |    6 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/r535.c     |  123 ++
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/tu102.c    |    4 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/uvmm.c     |    6 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmm.c      |    7 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmtu102.c |    6 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gp102.c    |    5 +
 .../gpu/drm/nouveau/nvkm/subdev/privring/gm200.c   |    5 +
 drivers/gpu/drm/nouveau/nvkm/subdev/therm/gp100.c  |    5 +
 drivers/gpu/drm/nouveau/nvkm/subdev/top/ga100.c    |    7 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/top/gk104.c    |    7 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/vfn/Kbuild     |    2 +
 drivers/gpu/drm/nouveau/nvkm/subdev/vfn/ga100.c    |    5 +
 drivers/gpu/drm/nouveau/nvkm/subdev/vfn/priv.h     |    7 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/vfn/r535.c     |   50 +
 drivers/gpu/drm/nouveau/nvkm/subdev/vfn/tu102.c    |    5 +
 230 files changed, 14050 insertions(+), 140 deletions(-)
 create mode 100644 drivers/gpu/drm/nouveau/include/nvkm/engine/nvjpg.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvkm/engine/ofa.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/sdk/nvidia/inc/alloc/alloc_channel.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/sdk/nvidia/inc/class/cl0000.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/sdk/nvidia/inc/class/cl0005.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/sdk/nvidia/inc/class/cl0080.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/sdk/nvidia/inc/class/cl2080.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/sdk/nvidia/inc/class/cl2080_notification.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/sdk/nvidia/inc/class/cl84a0.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/sdk/nvidia/inc/class/cl90f1.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/sdk/nvidia/inc/class/clc0b5sw.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/sdk/nvidia/inc/ctrl/ctrl0073/ctrl0073common.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/sdk/nvidia/inc/ctrl/ctrl0073/ctrl0073dfp.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/sdk/nvidia/inc/ctrl/ctrl0073/ctrl0073dp.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/sdk/nvidia/inc/ctrl/ctrl0073/ctrl0073specific.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/sdk/nvidia/inc/ctrl/ctrl0073/ctrl0073system.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/sdk/nvidia/inc/ctrl/ctrl0080/ctrl0080fifo.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/sdk/nvidia/inc/ctrl/ctrl0080/ctrl0080gpu.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/sdk/nvidia/inc/ctrl/ctrl0080/ctrl0080gr.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/sdk/nvidia/inc/ctrl/ctrl2080/ctrl2080bios.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/sdk/nvidia/inc/ctrl/ctrl2080/ctrl2080ce.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/sdk/nvidia/inc/ctrl/ctrl2080/ctrl2080event.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/sdk/nvidia/inc/ctrl/ctrl2080/ctrl2080fb.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/sdk/nvidia/inc/ctrl/ctrl2080/ctrl2080fifo.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/sdk/nvidia/inc/ctrl/ctrl2080/ctrl2080gpu.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/sdk/nvidia/inc/ctrl/ctrl2080/ctrl2080gr.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/sdk/nvidia/inc/ctrl/ctrl2080/ctrl2080internal.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/sdk/nvidia/inc/ctrl/ctrl90f1.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/sdk/nvidia/inc/ctrl/ctrla06f/ctrla06fgpfifo.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/sdk/nvidia/inc/nvlimits.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/sdk/nvidia/inc/nvos.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/shared/msgq/inc/msgq/msgq_priv.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/common/uproc/os/common/include/libos_init_args.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/nvidia/arch/nvalloc/common/inc/gsp/gsp_fw_sr_meta.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/nvidia/arch/nvalloc/common/inc/gsp/gsp_fw_wpr_meta.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/nvidia/arch/nvalloc/common/inc/rmRiscvUcode.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/nvidia/arch/nvalloc/common/inc/rmgspseq.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/nvidia/generated/g_allclasses.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/nvidia/generated/g_chipset_nvoc.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/nvidia/generated/g_fbsr_nvoc.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/nvidia/generated/g_gpu_nvoc.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/nvidia/generated/g_kernel_channel_nvoc.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/nvidia/generated/g_kernel_fifo_nvoc.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/nvidia/generated/g_mem_desc_nvoc.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/nvidia/generated/g_os_nvoc.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/nvidia/generated/g_rpc-structures.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/nvidia/generated/g_sdk-structures.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/nvidia/inc/kernel/gpu/gpu_acpi_data.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/nvidia/inc/kernel/gpu/gpu_engine_type.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/nvidia/inc/kernel/gpu/gsp/gsp_fw_heap.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/nvidia/inc/kernel/gpu/gsp/gsp_init_args.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/nvidia/inc/kernel/gpu/gsp/gsp_static_config.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/nvidia/inc/kernel/gpu/intr/engine_idx.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/nvidia/inc/kernel/gpu/nvbitmask.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/nvidia/inc/kernel/os/nv_memory_type.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/nvidia/kernel/inc/vgpu/rpc_global_enums.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/nvidia/kernel/inc/vgpu/rpc_headers.h
 create mode 100644
drivers/gpu/drm/nouveau/include/nvrm/535.113.01/nvidia/kernel/inc/vgpu/sdk-structures.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvrm/nvtypes.h
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/ce/r535.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/ad102.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/r535.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/fifo/r535.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/gr/ad102.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/gr/r535.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/nvdec/ad102.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/nvdec/ga100.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/nvdec/r535.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/nvdec/tu102.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/nvenc/ad102.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/nvenc/ga102.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/nvenc/r535.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/nvenc/tu102.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/nvjpg/Kbuild
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/nvjpg/ad102.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/nvjpg/ga100.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/nvjpg/priv.h
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/nvjpg/r535.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/ofa/Kbuild
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/ofa/ad102.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/ofa/ga100.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/ofa/ga102.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/ofa/priv.h
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/ofa/r535.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/sec2/r535.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/falcon/tu102.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/bar/r535.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/devinit/r535.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/fb/r535.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/gsp/ad102.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/gsp/fwsec.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/gsp/ga100.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/gsp/r535.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/gsp/tu102.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/gsp/tu116.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/instmem/r535.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/r535.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/vfn/r535.c

Comments

pr-tracker-bot@kernel.org Nov. 5, 2023, 3:02 a.m. UTC | #1
The pull request you sent on Fri, 3 Nov 2023 13:16:45 +1000:

> git://anongit.freedesktop.org/drm/drm tags/topic/nvidia-gsp-2023-11-03

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/e70703890b2586bc3567365d391c260d23fb7a94

Thank you!