| .. SPDX-License-Identifier: GPL-2.0+ |
| |
| ========================= |
| drm/Panfrost Mali Driver |
| ========================= |
| |
| .. _panfrost-usage-stats: |
| |
| Panfrost DRM client usage stats implementation |
| ============================================== |
| |
| The drm/Panfrost driver implements the DRM client usage stats specification as |
| documented in :ref:`drm-client-usage-stats`. |
| |
| Example of the output showing the implemented key value pairs and entirety of |
| the currently possible format options: |
| |
| :: |
| pos: 0 |
| flags: 02400002 |
| mnt_id: 27 |
| ino: 531 |
| drm-driver: panfrost |
| drm-client-id: 14 |
| drm-engine-fragment: 1846584880 ns |
| drm-cycles-fragment: 1424359409 |
| drm-maxfreq-fragment: 799999987 Hz |
| drm-curfreq-fragment: 799999987 Hz |
| drm-engine-vertex-tiler: 71932239 ns |
| drm-cycles-vertex-tiler: 52617357 |
| drm-maxfreq-vertex-tiler: 799999987 Hz |
| drm-curfreq-vertex-tiler: 799999987 Hz |
| drm-total-memory: 290 MiB |
| drm-shared-memory: 0 MiB |
| drm-active-memory: 226 MiB |
| drm-resident-memory: 36496 KiB |
| drm-purgeable-memory: 128 KiB |
| |
| Possible `drm-engine-` key names are: `fragment`, and `vertex-tiler`. |
| `drm-curfreq-` values convey the current operating frequency for that engine. |
| |
| Users must bear in mind that engine and cycle sampling are disabled by default, |
| because of power saving concerns. `fdinfo` users and benchmark applications which |
| query the fdinfo file must make sure to toggle the job profiling status of the |
| driver by writing into the appropriate sysfs node:: |
| |
| echo <N> > /sys/bus/platform/drivers/panfrost/[a-f0-9]*.gpu/profiling |
| |
| Where `N` is either `0` or `1`, depending on the desired enablement status. |