[igt-dev] [PATCH i-g-t 09/10] lib/i915: add mmio base for engines
Chris Wilson
chris at chris-wilson.co.uk
Wed Nov 20 21:42:27 UTC 2019
Quoting Lionel Landwerlin (2019-11-20 21:21:42)
> Useful when you want to work with MI_ALU and general purpose registers
> local to an engine.
>
> Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
> ---
> lib/i915/gem_engine_topology.c | 74 ++++++++++++++++++++++++++++++++++
> lib/i915/gem_engine_topology.h | 5 +++
> 2 files changed, 79 insertions(+)
>
> diff --git a/lib/i915/gem_engine_topology.c b/lib/i915/gem_engine_topology.c
> index 790d455f..925fdb51 100644
> --- a/lib/i915/gem_engine_topology.c
> +++ b/lib/i915/gem_engine_topology.c
> @@ -22,6 +22,7 @@
> */
>
> #include "drmtest.h"
> +#include "intel_chipset.h"
> #include "ioctl_wrappers.h"
>
> #include "i915/gem_engine_topology.h"
> @@ -337,3 +338,76 @@ bool gem_engine_is_equal(const struct intel_execution_engine2 *e1,
> {
> return e1->class == e2->class && e1->instance == e2->instance;
> }
> +
> +uint32_t intel_get_engine_mmio_base(const uint16_t devid,
> + const struct intel_execution_engine2 *e)
> +{
> + switch (e->class) {
> + case I915_ENGINE_CLASS_RENDER:
> + return 0x2000;
> + case I915_ENGINE_CLASS_COPY:
> + return 0x22000;
> + case I915_ENGINE_CLASS_VIDEO: {
> + uint32_t gen11_bases[] = {
> + 0x1c0000,
Physical layout is not possible to determine from class/inst nor legacy
I915_EXEC_RING.
https://patchwork.freedesktop.org/patch/340599/?series=69401&rev=1
-Chris
More information about the igt-dev
mailing list