Commit 78cdadb8 authored by Ben Skeggs's avatar Ben Skeggs

drm/nouveau/core: define GSP subdev

Exact meaning of the acronym is unknown, but we need this for Turing ACR.
Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
parent 785cf1ee
...@@ -28,6 +28,7 @@ enum nvkm_devidx { ...@@ -28,6 +28,7 @@ enum nvkm_devidx {
NVKM_SUBDEV_ICCSENSE, NVKM_SUBDEV_ICCSENSE,
NVKM_SUBDEV_THERM, NVKM_SUBDEV_THERM,
NVKM_SUBDEV_CLK, NVKM_SUBDEV_CLK,
NVKM_SUBDEV_GSP,
NVKM_SUBDEV_SECBOOT, NVKM_SUBDEV_SECBOOT,
NVKM_ENGINE_BSP, NVKM_ENGINE_BSP,
...@@ -137,6 +138,7 @@ struct nvkm_device { ...@@ -137,6 +138,7 @@ struct nvkm_device {
struct nvkm_fb *fb; struct nvkm_fb *fb;
struct nvkm_fuse *fuse; struct nvkm_fuse *fuse;
struct nvkm_gpio *gpio; struct nvkm_gpio *gpio;
struct nvkm_gsp *gsp;
struct nvkm_i2c *i2c; struct nvkm_i2c *i2c;
struct nvkm_subdev *ibus; struct nvkm_subdev *ibus;
struct nvkm_iccsense *iccsense; struct nvkm_iccsense *iccsense;
...@@ -209,6 +211,7 @@ struct nvkm_device_chip { ...@@ -209,6 +211,7 @@ struct nvkm_device_chip {
int (*fb )(struct nvkm_device *, int idx, struct nvkm_fb **); int (*fb )(struct nvkm_device *, int idx, struct nvkm_fb **);
int (*fuse )(struct nvkm_device *, int idx, struct nvkm_fuse **); int (*fuse )(struct nvkm_device *, int idx, struct nvkm_fuse **);
int (*gpio )(struct nvkm_device *, int idx, struct nvkm_gpio **); int (*gpio )(struct nvkm_device *, int idx, struct nvkm_gpio **);
int (*gsp )(struct nvkm_device *, int idx, struct nvkm_gsp **);
int (*i2c )(struct nvkm_device *, int idx, struct nvkm_i2c **); int (*i2c )(struct nvkm_device *, int idx, struct nvkm_i2c **);
int (*ibus )(struct nvkm_device *, int idx, struct nvkm_subdev **); int (*ibus )(struct nvkm_device *, int idx, struct nvkm_subdev **);
int (*iccsense)(struct nvkm_device *, int idx, struct nvkm_iccsense **); int (*iccsense)(struct nvkm_device *, int idx, struct nvkm_iccsense **);
......
#ifndef __NVKM_GSP_H__
#define __NVKM_GSP_H__
#define nvkm_gsp(p) container_of((p), struct nvkm_gsp, subdev)
#include <core/subdev.h>
struct nvkm_gsp {
struct nvkm_subdev subdev;
};
#endif
...@@ -39,6 +39,7 @@ nvkm_subdev_name[NVKM_SUBDEV_NR] = { ...@@ -39,6 +39,7 @@ nvkm_subdev_name[NVKM_SUBDEV_NR] = {
[NVKM_SUBDEV_FB ] = "fb", [NVKM_SUBDEV_FB ] = "fb",
[NVKM_SUBDEV_FUSE ] = "fuse", [NVKM_SUBDEV_FUSE ] = "fuse",
[NVKM_SUBDEV_GPIO ] = "gpio", [NVKM_SUBDEV_GPIO ] = "gpio",
[NVKM_SUBDEV_GSP ] = "gsp",
[NVKM_SUBDEV_I2C ] = "i2c", [NVKM_SUBDEV_I2C ] = "i2c",
[NVKM_SUBDEV_IBUS ] = "priv", [NVKM_SUBDEV_IBUS ] = "priv",
[NVKM_SUBDEV_ICCSENSE] = "iccsense", [NVKM_SUBDEV_ICCSENSE] = "iccsense",
......
...@@ -2567,6 +2567,7 @@ nvkm_device_subdev(struct nvkm_device *device, int index) ...@@ -2567,6 +2567,7 @@ nvkm_device_subdev(struct nvkm_device *device, int index)
_(FB , device->fb , &device->fb->subdev); _(FB , device->fb , &device->fb->subdev);
_(FUSE , device->fuse , &device->fuse->subdev); _(FUSE , device->fuse , &device->fuse->subdev);
_(GPIO , device->gpio , &device->gpio->subdev); _(GPIO , device->gpio , &device->gpio->subdev);
_(GSP , device->gsp , &device->gsp->subdev);
_(I2C , device->i2c , &device->i2c->subdev); _(I2C , device->i2c , &device->i2c->subdev);
_(IBUS , device->ibus , device->ibus); _(IBUS , device->ibus , device->ibus);
_(ICCSENSE, device->iccsense, &device->iccsense->subdev); _(ICCSENSE, device->iccsense, &device->iccsense->subdev);
...@@ -3050,6 +3051,7 @@ nvkm_device_ctor(const struct nvkm_device_func *func, ...@@ -3050,6 +3051,7 @@ nvkm_device_ctor(const struct nvkm_device_func *func,
_(NVKM_SUBDEV_FB , fb); _(NVKM_SUBDEV_FB , fb);
_(NVKM_SUBDEV_FUSE , fuse); _(NVKM_SUBDEV_FUSE , fuse);
_(NVKM_SUBDEV_GPIO , gpio); _(NVKM_SUBDEV_GPIO , gpio);
_(NVKM_SUBDEV_GSP , gsp);
_(NVKM_SUBDEV_I2C , i2c); _(NVKM_SUBDEV_I2C , i2c);
_(NVKM_SUBDEV_IBUS , ibus); _(NVKM_SUBDEV_IBUS , ibus);
_(NVKM_SUBDEV_ICCSENSE, iccsense); _(NVKM_SUBDEV_ICCSENSE, iccsense);
......
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
#include <subdev/fb.h> #include <subdev/fb.h>
#include <subdev/fuse.h> #include <subdev/fuse.h>
#include <subdev/gpio.h> #include <subdev/gpio.h>
#include <subdev/gsp.h>
#include <subdev/i2c.h> #include <subdev/i2c.h>
#include <subdev/ibus.h> #include <subdev/ibus.h>
#include <subdev/iccsense.h> #include <subdev/iccsense.h>
......
...@@ -7,6 +7,7 @@ include $(src)/nvkm/subdev/fault/Kbuild ...@@ -7,6 +7,7 @@ include $(src)/nvkm/subdev/fault/Kbuild
include $(src)/nvkm/subdev/fb/Kbuild include $(src)/nvkm/subdev/fb/Kbuild
include $(src)/nvkm/subdev/fuse/Kbuild include $(src)/nvkm/subdev/fuse/Kbuild
include $(src)/nvkm/subdev/gpio/Kbuild include $(src)/nvkm/subdev/gpio/Kbuild
include $(src)/nvkm/subdev/gsp/Kbuild
include $(src)/nvkm/subdev/i2c/Kbuild include $(src)/nvkm/subdev/i2c/Kbuild
include $(src)/nvkm/subdev/ibus/Kbuild include $(src)/nvkm/subdev/ibus/Kbuild
include $(src)/nvkm/subdev/iccsense/Kbuild include $(src)/nvkm/subdev/iccsense/Kbuild
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment