drm/vc4: Make sure that the v3d ident debugfs has vc4's power on.
Otherwise, you sometimes decode the ident fields based on 0xdeadbeef register reads. Signed-off-by: Eric Anholt <eric@anholt.net> Link: https://patchwork.freedesktop.org/patch/msgid/20190220210343.28157-7-eric@anholt.net Reviewed-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
This commit is contained in:
parent
cb74f6ee8e
commit
6234fc0fb0
@ -121,18 +121,23 @@ int vc4_v3d_debugfs_ident(struct seq_file *m, void *unused)
|
|||||||
struct drm_info_node *node = (struct drm_info_node *)m->private;
|
struct drm_info_node *node = (struct drm_info_node *)m->private;
|
||||||
struct drm_device *dev = node->minor->dev;
|
struct drm_device *dev = node->minor->dev;
|
||||||
struct vc4_dev *vc4 = to_vc4_dev(dev);
|
struct vc4_dev *vc4 = to_vc4_dev(dev);
|
||||||
uint32_t ident1 = V3D_READ(V3D_IDENT1);
|
int ret = vc4_v3d_pm_get(vc4);
|
||||||
uint32_t nslc = VC4_GET_FIELD(ident1, V3D_IDENT1_NSLC);
|
|
||||||
uint32_t tups = VC4_GET_FIELD(ident1, V3D_IDENT1_TUPS);
|
|
||||||
uint32_t qups = VC4_GET_FIELD(ident1, V3D_IDENT1_QUPS);
|
|
||||||
|
|
||||||
seq_printf(m, "Revision: %d\n",
|
if (ret == 0) {
|
||||||
VC4_GET_FIELD(ident1, V3D_IDENT1_REV));
|
uint32_t ident1 = V3D_READ(V3D_IDENT1);
|
||||||
seq_printf(m, "Slices: %d\n", nslc);
|
uint32_t nslc = VC4_GET_FIELD(ident1, V3D_IDENT1_NSLC);
|
||||||
seq_printf(m, "TMUs: %d\n", nslc * tups);
|
uint32_t tups = VC4_GET_FIELD(ident1, V3D_IDENT1_TUPS);
|
||||||
seq_printf(m, "QPUs: %d\n", nslc * qups);
|
uint32_t qups = VC4_GET_FIELD(ident1, V3D_IDENT1_QUPS);
|
||||||
seq_printf(m, "Semaphores: %d\n",
|
|
||||||
VC4_GET_FIELD(ident1, V3D_IDENT1_NSEM));
|
seq_printf(m, "Revision: %d\n",
|
||||||
|
VC4_GET_FIELD(ident1, V3D_IDENT1_REV));
|
||||||
|
seq_printf(m, "Slices: %d\n", nslc);
|
||||||
|
seq_printf(m, "TMUs: %d\n", nslc * tups);
|
||||||
|
seq_printf(m, "QPUs: %d\n", nslc * qups);
|
||||||
|
seq_printf(m, "Semaphores: %d\n",
|
||||||
|
VC4_GET_FIELD(ident1, V3D_IDENT1_NSEM));
|
||||||
|
vc4_v3d_pm_put(vc4);
|
||||||
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user