Commit b62b9ec2 authored by Ben Skeggs's avatar Ben Skeggs

drm/nv50-/disp: allow dumping core channel state at first supervisor intr

Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
parent d67d92c0
...@@ -1520,12 +1520,14 @@ nv50_disp_intr_supervisor(struct work_struct *work) ...@@ -1520,12 +1520,14 @@ nv50_disp_intr_supervisor(struct work_struct *work)
{ {
struct nv50_disp_priv *priv = struct nv50_disp_priv *priv =
container_of(work, struct nv50_disp_priv, supervisor); container_of(work, struct nv50_disp_priv, supervisor);
struct nv50_disp_impl *impl = (void *)nv_object(priv)->oclass;
u32 super = nv_rd32(priv, 0x610030); u32 super = nv_rd32(priv, 0x610030);
int head; int head;
nv_debug(priv, "supervisor 0x%08x 0x%08x\n", priv->super, super); nv_debug(priv, "supervisor 0x%08x 0x%08x\n", priv->super, super);
if (priv->super & 0x00000010) { if (priv->super & 0x00000010) {
nv50_disp_mthd_chan(priv, NV_DBG_DEBUG, 0, impl->mthd.core);
for (head = 0; head < priv->head.nr; head++) { for (head = 0; head < priv->head.nr; head++) {
if (!(super & (0x00000020 << head))) if (!(super & (0x00000020 << head)))
continue; continue;
......
...@@ -1174,6 +1174,7 @@ nvd0_disp_intr_supervisor(struct work_struct *work) ...@@ -1174,6 +1174,7 @@ nvd0_disp_intr_supervisor(struct work_struct *work)
{ {
struct nv50_disp_priv *priv = struct nv50_disp_priv *priv =
container_of(work, struct nv50_disp_priv, supervisor); container_of(work, struct nv50_disp_priv, supervisor);
struct nv50_disp_impl *impl = (void *)nv_object(priv)->oclass;
u32 mask[4]; u32 mask[4];
int head; int head;
...@@ -1184,6 +1185,7 @@ nvd0_disp_intr_supervisor(struct work_struct *work) ...@@ -1184,6 +1185,7 @@ nvd0_disp_intr_supervisor(struct work_struct *work)
} }
if (priv->super & 0x00000001) { if (priv->super & 0x00000001) {
nv50_disp_mthd_chan(priv, NV_DBG_DEBUG, 0, impl->mthd.core);
for (head = 0; head < priv->head.nr; head++) { for (head = 0; head < priv->head.nr; head++) {
if (!(mask[head] & 0x00001000)) if (!(mask[head] & 0x00001000))
continue; continue;
......
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