Commit 1ce46689 authored by Ben Skeggs's avatar Ben Skeggs
Browse files

drm/nouveau/core: define FAULT subdev



This will be responsible for the handling of MMU fault buffers on GPUs
that support them.

Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
parent 7bf5b70b
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -22,6 +22,7 @@ enum nvkm_devidx {
	NVKM_SUBDEV_LTC,
	NVKM_SUBDEV_MMU,
	NVKM_SUBDEV_BAR,
	NVKM_SUBDEV_FAULT,
	NVKM_SUBDEV_PMU,
	NVKM_SUBDEV_VOLT,
	NVKM_SUBDEV_ICCSENSE,
@@ -123,6 +124,7 @@ struct nvkm_device {
	struct nvkm_bus *bus;
	struct nvkm_clk *clk;
	struct nvkm_devinit *devinit;
	struct nvkm_fault *fault;
	struct nvkm_fb *fb;
	struct nvkm_fuse *fuse;
	struct nvkm_gpio *gpio;
@@ -194,6 +196,7 @@ struct nvkm_device_chip {
	int (*bus     )(struct nvkm_device *, int idx, struct nvkm_bus **);
	int (*clk     )(struct nvkm_device *, int idx, struct nvkm_clk **);
	int (*devinit )(struct nvkm_device *, int idx, struct nvkm_devinit **);
	int (*fault   )(struct nvkm_device *, int idx, struct nvkm_fault **);
	int (*fb      )(struct nvkm_device *, int idx, struct nvkm_fb **);
	int (*fuse    )(struct nvkm_device *, int idx, struct nvkm_fuse **);
	int (*gpio    )(struct nvkm_device *, int idx, struct nvkm_gpio **);
+8 −0
Original line number Diff line number Diff line
#ifndef __NVKM_FAULT_H__
#define __NVKM_FAULT_H__
#include <core/subdev.h>

struct nvkm_fault {
	struct nvkm_subdev subdev;
};
#endif
+1 −0
Original line number Diff line number Diff line
@@ -35,6 +35,7 @@ nvkm_subdev_name[NVKM_SUBDEV_NR] = {
	[NVKM_SUBDEV_BUS     ] = "bus",
	[NVKM_SUBDEV_CLK     ] = "clk",
	[NVKM_SUBDEV_DEVINIT ] = "devinit",
	[NVKM_SUBDEV_FAULT   ] = "fault",
	[NVKM_SUBDEV_FB      ] = "fb",
	[NVKM_SUBDEV_FUSE    ] = "fuse",
	[NVKM_SUBDEV_GPIO    ] = "gpio",
+2 −0
Original line number Diff line number Diff line
@@ -2420,6 +2420,7 @@ nvkm_device_subdev(struct nvkm_device *device, int index)
	_(BUS     , device->bus     , &device->bus->subdev);
	_(CLK     , device->clk     , &device->clk->subdev);
	_(DEVINIT , device->devinit , &device->devinit->subdev);
	_(FAULT   , device->fault   , &device->fault->subdev);
	_(FB      , device->fb      , &device->fb->subdev);
	_(FUSE    , device->fuse    , &device->fuse->subdev);
	_(GPIO    , device->gpio    , &device->gpio->subdev);
@@ -2891,6 +2892,7 @@ nvkm_device_ctor(const struct nvkm_device_func *func,
		_(NVKM_SUBDEV_BUS     ,      bus);
		_(NVKM_SUBDEV_CLK     ,      clk);
		_(NVKM_SUBDEV_DEVINIT ,  devinit);
		_(NVKM_SUBDEV_FAULT   ,    fault);
		_(NVKM_SUBDEV_FB      ,       fb);
		_(NVKM_SUBDEV_FUSE    ,     fuse);
		_(NVKM_SUBDEV_GPIO    ,     gpio);
+1 −0
Original line number Diff line number Diff line
@@ -8,6 +8,7 @@
#include <subdev/bus.h>
#include <subdev/clk.h>
#include <subdev/devinit.h>
#include <subdev/fault.h>
#include <subdev/fb.h>
#include <subdev/fuse.h>
#include <subdev/gpio.h>
Loading