Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2df0bf57 authored by Samuel Pitoiset's avatar Samuel Pitoiset Committed by Ben Skeggs
Browse files

drm/nouveau/pm/gf100: only use PBFB_BROADCAST.PM_UNK100 for PBFB signals



High level hardware events related to PBFB will monitor all partitions.
While we are at it, fix bitfield for this mux.

Signed-off-by: default avatarSamuel Pitoiset <samuel.pitoiset@gmail.com>
Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
parent 8feece04
Loading
Loading
Loading
Loading
+10 −11
Original line number Diff line number Diff line
@@ -23,6 +23,16 @@
 */
#include "gf100.h"

const struct nvkm_specsrc
gf100_pbfb_sources[] = {
	{ 0x10f100, (const struct nvkm_specmux[]) {
			{ 0x1, 0, "unk0" },
			{ 0x3f, 4, "unk4" },
			{}
		}, "pbfb_broadcast_pm_unk100" },
	{}
};

const struct nvkm_specsrc
gf100_pmfb_sources[] = {
	{ 0x140028, (const struct nvkm_specmux[]) {
@@ -44,17 +54,6 @@ gf100_l1_sources[] = {
	{}
};

static const struct nvkm_specsrc
gf100_pbfb_sources[] = {
	{ 0x10f100, (const struct nvkm_specmux[]) {
			{ 0x1, 0, "unk0" },
			{ 0xf, 4, "unk4" },
			{ 0x3, 8, "unk8" },
			{}
		}, "pbfb_broadcast_pm_unk100" },
	{}
};

static const struct nvkm_specsrc
gf100_tex_sources[] = {
	{ 0x5042c0, (const struct nvkm_specmux[]) {
+1 −1
Original line number Diff line number Diff line
@@ -26,7 +26,7 @@ int gf100_pm_fini(struct nvkm_object *, bool);

extern const struct nvkm_specdom gf100_pm_gpc[];

extern const struct nvkm_specsrc gf100_pbfb_sources[];
extern const struct nvkm_specsrc gf100_pmfb_sources[];
extern const struct nvkm_specsrc gf117_pbfb_sources[];

#endif
+4 −21
Original line number Diff line number Diff line
@@ -23,23 +23,6 @@
 */
#include "gf100.h"

static const struct nvkm_specsrc
gf108_pbfb_sources[] = {
	{ 0x110100, (const struct nvkm_specmux[]) {
			{ 0x1, 0, "unk0" },
			{ 0xf, 4, "unk4" },
			{ 0x3, 8, "unk8" },
			{}
		}, "pbfb0_pm_unk100" },
	{ 0x111100, (const struct nvkm_specmux[]) {
			{ 0x1, 0, "unk0" },
			{ 0xf, 4, "unk4" },
			{ 0x3, 8, "unk8" },
			{}
		}, "pbfb1_pm_unk100" },
	{}
};

static const struct nvkm_specdom
gf108_pm_hub[] = {
	{}
@@ -48,10 +31,10 @@ gf108_pm_hub[] = {
static const struct nvkm_specdom
gf108_pm_part[] = {
	{ 0xe0, (const struct nvkm_specsig[]) {
			{ 0x14, "part00_pbfb_00", gf108_pbfb_sources },
			{ 0x15, "part00_pbfb_01", gf108_pbfb_sources },
			{ 0x20, "part00_pbfb_02", gf108_pbfb_sources },
			{ 0x21, "part00_pbfb_03", gf108_pbfb_sources },
			{ 0x14, "part00_pbfb_00", gf100_pbfb_sources },
			{ 0x15, "part00_pbfb_01", gf100_pbfb_sources },
			{ 0x20, "part00_pbfb_02", gf100_pbfb_sources },
			{ 0x21, "part00_pbfb_03", gf100_pbfb_sources },
			{ 0x01, "part00_pmfb_00", gf100_pmfb_sources },
			{ 0x04, "part00_pmfb_01", gf100_pmfb_sources },
			{ 0x05, "part00_pmfb_02", gf100_pmfb_sources},
+2 −19
Original line number Diff line number Diff line
@@ -39,23 +39,6 @@ gf117_pmfb_sources[] = {
	{}
};

const struct nvkm_specsrc
gf117_pbfb_sources[] = {
	{ 0x110100, (const struct nvkm_specmux[]) {
			{ 0x1, 0, "unk0" },
			{ 0xf, 4, "unk4" },
			{ 0x3, 8, "unk8" },
			{}
		}, "pbfb0_pm_unk100" },
        { 0x10f100, (const struct nvkm_specmux[]) {
			{ 0x1, 0, "unk0" },
			{ 0xf, 4, "unk4" },
			{ 0x3, 8, "unk8" },
			{}
		}, "pbfb_broadcast_pm_unk100" },
	{}
};

static const struct nvkm_specdom
gf117_pm_hub[] = {
	{}
@@ -64,8 +47,8 @@ gf117_pm_hub[] = {
static const struct nvkm_specdom
gf117_pm_part[] = {
	{ 0xe0, (const struct nvkm_specsig[]) {
			{ 0x00, "part00_pbfb_00", gf117_pbfb_sources },
			{ 0x01, "part00_pbfb_01", gf117_pbfb_sources },
			{ 0x00, "part00_pbfb_00", gf100_pbfb_sources },
			{ 0x01, "part00_pbfb_01", gf100_pbfb_sources },
			{ 0x12, "part00_pmfb_00", gf117_pmfb_sources },
			{ 0x15, "part00_pmfb_01", gf117_pmfb_sources },
			{ 0x16, "part00_pmfb_02", gf117_pmfb_sources },
+2 −2
Original line number Diff line number Diff line
@@ -145,8 +145,8 @@ gk104_pm_gpc[] = {
static const struct nvkm_specdom
gk104_pm_part[] = {
	{ 0x60, (const struct nvkm_specsig[]) {
			{ 0x00, "part00_pbfb_00", gf117_pbfb_sources },
			{ 0x01, "part00_pbfb_01", gf117_pbfb_sources },
			{ 0x00, "part00_pbfb_00", gf100_pbfb_sources },
			{ 0x01, "part00_pbfb_01", gf100_pbfb_sources },
			{ 0x0c, "part00_pmfb_00", gk104_pmfb_sources },
			{ 0x0d, "part00_pmfb_01", gk104_pmfb_sources },
			{ 0x0e, "part00_pmfb_02", gk104_pmfb_sources },