Commit 937deb06 authored by Alexandre Courbot's avatar Alexandre Courbot Committed by Ben Skeggs

drm/nouveau/pmu/gm20b: add msgqueue support

gm20b PMU firmware is driven by a msgqueue, so connect relevant PMU
hooks to their msgqueue counterparts.
Signed-off-by: default avatarAlexandre Courbot <acourbot@nvidia.com>
Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
parent fc127457
...@@ -20,15 +20,30 @@ ...@@ -20,15 +20,30 @@
* DEALINGS IN THE SOFTWARE. * DEALINGS IN THE SOFTWARE.
*/ */
#include <engine/falcon.h>
#include <core/msgqueue.h>
#include "priv.h" #include "priv.h"
static void
gm20b_pmu_recv(struct nvkm_pmu *pmu)
{
nvkm_msgqueue_recv(pmu->queue);
}
static const struct nvkm_pmu_func static const struct nvkm_pmu_func
gm20b_pmu = { gm20b_pmu = {
.reset = gt215_pmu_reset, .intr = gt215_pmu_intr,
.recv = gm20b_pmu_recv,
}; };
int int
gm20b_pmu_new(struct nvkm_device *device, int index, struct nvkm_pmu **ppmu) gm20b_pmu_new(struct nvkm_device *device, int index, struct nvkm_pmu **ppmu)
{ {
return nvkm_pmu_new_(&gm20b_pmu, device, index, ppmu); int ret;
ret = nvkm_pmu_new_(&gm20b_pmu, device, index, ppmu);
if (ret)
return ret;
return 0;
} }
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