a6xx: Implement IFPC
Most likely to help when the GPU is mostly idle but being kept awake by period activity (blinking cursor, blinky web side, etc).
Rough list of what would be needed:
- fenced writes to any register that kernel might need to write while GPU is in IFPC (mainly
CP_RB_WPTR
, but also preemption related registers -
CP_SET_MARKER
packets in kernel level cmdstream to mark IFPC enable/disable - some sort of kill-switch (modparam or debugfs) for fdperf/perfetto to disable IFPC while it is sampling perfcntrs